我在亚马逊AWS EC2上运行Linux的实例是在仔细按照亚马逊提供的说明进行的:Setting Up to Host a Web App on AWS。 我已经设置了亚马逊提供的文档中提到的安全组。
默认安全组在所有端口上打开所有流量,所有协议。
除了上面的安全规则,我在端口22上设置了SSH,然后使用CyberDuck
(一个很棒的FTP应用程序),我已将Web2Py
源代码上传到名为web2py的文件夹中在AWS。
在将源代码成功FTP到这个web2py文件夹之后,我已经使用终端(在Mac上本地)使用my-keys-file.pem将SSH连接到AWS机器上:
ssh -i my-keys-file.pem ec2-user@ec2-xx-xx-xx-xx.compute-1.amazonaws.com
(其中xx是公共DNS中的数字,因为它们出现在我在EC2页面上的实例上)
然后我检查了我的AWS实例是否安装了python并确实拥有它。 因此,我已经开始安装Web2Py。
python2.6 web2py.py
password = pwd
它警告说,由于没有安装Tlk库,GUI不可用,但是Massimo在这里(http://comments.gmane.org/gmane.comp.python.web2py/129181)说它并不重要。
运行Web2Py ....
如果我尝试:
python web2py.py -a pwd -i 0.0.0.0 -p 80
它说:
there is an error with the Rocket Server with that specific port (used by another process that is not willing to share...)
如果我尝试:
python web2py.py -a pwd
它什么也没说(这引出了一个问题:web2py正在运行吗?)当我尝试访问web2py服务器时 http://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/ 要么 https://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/admin 在这两种情况下,它都说页面不可用,因为访问它需要很长时间(没有任何安全原因)。
如果我尝试:
python web2py.py -a pwd -i 0.0.0.0 -p 8000
再次 - 它什么都没说(运行web2py?) 试图访问Web2Py服务器 http://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/ 要么 https://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/admin 在这两种情况下,它都说页面不可用,与上面相同。
我的问题:
非常感谢任何帮助。 感谢
答案 0 :(得分:1)
我已经将我的Web2py部署到运行Ubuntu的EC2实例,但我想你可以采用相同的方法来适应你的系统。
部署Web2py的最简单方法是遵循官方Web2py书中介绍的“One step production deployment”脚本。
wget http://web2py.googlecode.com/hg/scripts/setup-web2py-ubuntu.sh
chmod +x setup-web2py-ubuntu.sh
sudo ./setup-web2py-ubuntu.sh
运行此命令将安装并配置您需要的所有内容。 完成后,只需在网络浏览器中输入您的IP或域名,您就会看到默认的web2py网站。