快速搭建本地HTTPS开发服务器

使用HTTS的应用越来越多,现在大部分网站都采用了HTTS,虽然安全性得到了保障,但对于开发调试来说,并不方便调试预览,越来越多的Web API调用依赖HTTPS环境,比如Web Bluetooth API, Web Geo API, Web Notificaiton API等等
所以在HTTS环境下调试将是一个常态,有必要本地建站HTTS的开发环境,以下内容教我们快速搭建一个HTTS服务器

环境准备

  • OS X 10.11.6(El Capitan)
  • Python 2.7.10 (OS自带)
  • OpenSSL 1.0.2h 3 May 2016(brew install openssl)
  • Google Chrome Version 52.0.2743.116 (64-bit)

生成证书

进入一个目录(用于搭建Web服务器的根目录)

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes

然后回车,填写相关信息(随意填写),但是 Common Name 这项要填写一个域名,将来做为htts访问的域名,例如此项填写为 lt,那么访问时使用 htts://lt:4443/index.html 访问

信息录入完成后,会在当前目录下生成server.pem证书

使用证书

新建一个 Python 文件

vi https-server.py

写入

import BaseHTTPServer, SimpleHTTPServer
import ssl
httpd = BaseHTTPServer.HTTPServer(('localhost', 4443), SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket, certfile='./server.pem', server_side=True)
httpd.serve_forever()

启动HTTS服务器

python simple-https-server.py

如果端口冲突,请修改上面 https-server.py 中的端口号

Chrome访问

打开 chorme 浏览器访问

授权证书

查看当前证书 -> 拖动到桌面 -> 双击导入到Keychain Access -> 设置为总是信任 -> 保存

打开控制台查看当前证书


将证书拖动到桌面,点击打开

添加自定义域名

vi /etc/hosts

设置本地代理

127.0.0.1 lt

访问

重启chrome,访问