开发小程序的时候,需要填写一个授权域名。还要有一个证书。这些都是花钱的。开发非常不方便。本文主要讲解配置ssl和本地开发。
小程序后台添加授权域名
这个域名你要写一个是备案过的。具体是不是你的,都可以。因为我们待会会改hosts做映射。
更改hosts
hosts 文件地址:C:WindowsSystem32driversetc
127.0.0.1 example.com #example.com 表示你的域名
生成自签名SSL证书
首先需要有OpenSSL。Mac是自带的,无须再安装;windows可以使用git-bash这类工具
这是生成自签名证书的教程 How to create a self-signed Certificate,下面是简化的版本
打开命令行:
1. 生成Private Key 输入命令 openssl genrsa -des3 -out 1024
2. 生成CSR (Certificate Signing Request) 输入命令 openssl req -new -key -out server.csr 然后根据提示依次输入信息,域名【comman name】不要填错
3. 移除Passphrase cp .org openssl rsa -in .org -out
4.生成自签名证书 openssl x509 -req -days 365 -in server.csr -signkey -out
完成了以上4步后,将和移到你想要存放证书的地方。
配置nginx
nginx的配置文件:nginx.conf
server { listen 443 ssl; ssl_certificate /ssl/; # 刚生成的crt ssl_certificate_key /ssl/; # 刚生成的key server_name yourdomain.com; # 你的域名 ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; location / { proxy_pass http://127.0.0.1:3000; # 本地服务器地址及端口 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_set_header X-Forward-Proto https; proxy_http_version 1.1; # for websocket proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } }
打开不校验安全域名、TLS 版本以及 HTTPS 证书
然后就可以在本地开发了。