Appengine - 使用https的本地开发服务器

Pat*_*ick 6 google-app-engine nginx ngrok

目标:使用App Engine开发服务器减少开发 - 反馈周期.对于我的使用,这必须作为公共HTTPS地址提供.App Engine开发服务器仅支持HTTP.

如何执行此操作:使用ngrok将本地开发环境公开为https公开可用地址.

使用从https到http的nginx反向代理.

这似乎是可能的,但对于我的生活,我没有配置工作.

我在osx上使用App Engine Standard Java.

欢迎其他工作解决方案或想法.当然有办法做到这一点.

小智 5

如果您只有一个模块需要通过 SSL 进行访问,您可以简单地使用这个https://github.com/cameronhunter/local-ssl-proxy。安装和使用超级简单。只需将目标端口更改为您的模块端口,然后通过 https 浏览到源端口。如果您需要访问多个模块,则需要使用不同的参数(端口)多次运行它。


Ale*_*nok 3

我使用 NGINX 作为我的项目的带有自签名证书的代理https://debtstracker.io/

这是我的 NGINX 配置。您还需要yourproject.local在主机文件中添加一些记录。

    server {  # This servers dynamic content of DebtsTracker.io project over HTTPS
            listen          443;
            server_name     debtstracker.local;
            ssl                  on;
            ssl_certificate      /etc/ssl/certs/debtstracker-local.crt;
            ssl_certificate_key  /etc/ssl/private/debtstracker-local.key;

            location /app/ {
                    proxy_pass   http://localhost:8100/;
                    proxy_set_header Host $http_host;
            }

            location / {
                    proxy_pass   http://127.0.0.1:8080;
                    proxy_set_header Host $http_host;
            }
    }
Run Code Online (Sandbox Code Playgroud)

第一个位置用于 GAE 开发服务器,第二个位置用于 Ionic 项目。

这是我用来生成证书的 bash 文件:

#!/usr/bin/env bash
# https://www.accuweaver.com/2014/09/19/make-chrome-accept-a-self-signed-certificate-on-osx/

# https://gist.github.com/jessedearing/2351836

# Run using "sudo"

echo "Generating an SSL private key to sign your certificate..."
openssl genrsa -des3 -out debtstracker-local.key 1024

echo "Generating a Certificate Signing Request..."
openssl req -new -key debtstracker-local.key -out debtstracker-local.csr

echo "Removing pass-phrase from key (for nginx)..."
cp debtstracker-local.key debtstracker-local.key.org
openssl rsa -in debtstracker-local.key.org -out debtstracker-local.key
rm debtstracker-local.key.org

echo "Generating certificate..."
openssl x509 -req -days 365 -in debtstracker-local.csr -signkey debtstracker-local.key -out debtstracker-local.crt

echo "Copying certificate (debtstracker-local.crt) to /etc/ssl/certs/"
mkdir -p  /etc/ssl/certs
cp debtstracker-local.crt /etc/ssl/certs/

echo "Copying key (debtstracker-local.key) to /etc/ssl/private/"
mkdir -p  /etc/ssl/private
cp debtstracker-local.key /etc/ssl/private/
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。我花了一些时间来设置这个。