今天想把这个搞定,突然发现中文资料少的可怜,所有的文章都是“转载”于一个人,无非就是用Putty里的ssh隧道功能。其实人家说了,必须开https才能远程访问。

运行python web2py.py –help,参数表中关于ssl的有:

-c SSL_CERTIFICATE, –ssl_certificate=SSL_CERTIFICATE
file that contains ssl certificate
-k SSL_PRIVATE_KEY, –ssl_private_key=SSL_PRIVATE_KEY
file that contains ssl private key

看来只要有证书就可以打开ssl连接,参考这篇文章。如果没有其他服务要用这个证书的话,完全可以放在web2py目录里。执行以下命令:

$openssl genrsa -des3 -out server.key 1024
然后输入密码产生一个server.key文件
$ openssl req -new -key server.key -out server.csr
接下来输入一些问题,产生证书,然后就该签名了
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
期间要输入你以前输入的密码。
到这里你就生成了密钥和证书,只要在web2py里把他们载入就可以了。

python web2.py – -ip=xxx.xxx.xxx.xxx  - -port==xxxx – -password=***** -c server.crt -k server.key
启动后还会问你密钥密码,然后从浏览器里访问https://ip:port/就成了。web2py真强大!

Bookmark and Share

Related posts:

  1. 在Google App Engine SDK里运行web2py
  2. 给Squid添加密码验证
  3. Arch Linux的X11启动方案选择
  4. Ubuntu内核升级失败处理
  5. 优化你的Ubuntu,小Tips集锦(1)