为什么会有这篇文章呢,肯定不会没事瞎写东西,太浪费时间了,因为最近在调研微信小程序,所以我也是被逼的┑( ̄Д  ̄)┍。微信小程序,如果不设置 appid的话,接口可以随便调试,但是如果要调用微信用户信息、获取微信和用户对应的 openid这样的操作,那就要有一个 appid 了,我党管的比较严,微信又比较听话,appid这个东西不是你说要就能要,你要找到一个组织,然后让组织的大头领告诉你 appid,以及能发出请求的域名。然而,微信这个坑爹货,后台设置的能发出请求的域名,居然是 https 的,这就有点坑爹了,所以,我讲讲我是怎么在本地搭建 https 测试服务器的。
记得我讲的是Mac电脑啊,其他的我也不会啊。
https 怎么安全啊,ssl 怎么加密啊,我也就不讲了,讲也讲不明白,直接上步骤吧。这可是我百度了好久才搞出来的。
好了,ssl 的自签名server.key,server.crt就搞定了,找一个好点的地方,把他们放进去。
然后本地搭服务器啊,我用的是 XAMPP 的mac 版本,原来搭建了 vhost,怎么搭 vhost,等我有空看写一下。
直接贴配置
这个是httpd-vhosts.conf里面的配置
<VirtualHost *:80>
ServerAdmin zengyuanman123@163.com
DocumentRoot "/Users/weiber/htdocs/gitlab/jfz_fortune_wxapp/node"
ServerName wx.jinfuzi.net
ProxyPass / http://127.0.0.1:3000/
ProxyPassReverse / http://127.0.0.1:3000/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin zengyuanman123@163.com
DocumentRoot "/Users/weiber/htdocs/gitlab/jfz_fortune_wxapp/node"
ServerName wx.jinfuzi.net
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "/Applications/XAMPP/xamppfiles/etc/ssl/server.crt"
SSLCertificateKeyFile "/Applications/XAMPP/xamppfiles/etc/ssl/server.key"
ProxyPass / http://127.0.0.1:3000/
ProxyPassReverse / http://127.0.0.1:3000/
</VirtualHost>
然后就没有然后了,可以通过https://wx.jinfuzi.net来访问了。
首先添加引用,最后一个很重要
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
配置如下
<VirtualHost *:80>
ServerAdmin zengyuanman123@163.com
DocumentRoot "/Users/weiber/htdocs/gitlab/jfz_fortune_wxapp/node"
ServerName wx.jinfuzi.net
ProxyPass /socket.io/1/websocket/ ws://127.0.0.1:3000/socket.io/1/websocket/
ProxyPassReverse /socket.io/1/websocket/ ws://127.0.0.1:3000/socket.io/1/websocket/
ProxyPass / http://127.0.0.1:3000/
ProxyPassReverse / http://127.0.0.1:3000/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin zengyuanman123@163.com
DocumentRoot "/Users/weiber/htdocs/gitlab/jfz_fortune_wxapp/node"
ServerName wx.jinfuzi.net
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "/Applications/XAMPP/xamppfiles/etc/ssl/server.crt"
SSLCertificateKeyFile "/Applications/XAMPP/xamppfiles/etc/ssl/server.key"
ProxyPass /socket.io/1/websocket/ ws://127.0.0.1:3000/socket.io/1/websocket/
ProxyPassReverse /socket.io/1/websocket/ ws://127.0.0.1:3000/socket.io/1/websocket/
ProxyPass / http://127.0.0.1:3000/
ProxyPassReverse / http://127.0.0.1:3000/
</VirtualHost>