Web2Py在AWS EC2 Linux上

时间:2015-01-02 23:54:24

标签: linux amazon-web-services amazon-ec2 hosting web2py

我在亚马逊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 ....

  1. 如果我尝试:

    python web2py.py -a pwd -i 0.0.0.0 -p 80

  2. 它说:

    there is an error with the Rocket Server with that specific port (used by another process that is not willing to share...)
    
    1. 如果我尝试:

      python web2py.py -a pwd

    2. 它什么也没说(这引出了一个问题:web2py正在运行吗?)当我尝试访问web2py服务器时 http://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/ 要么 https://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/admin 在这两种情况下,它都说页面不可用,因为访问它需要很长时间(没有任何安全原因)。

      1. 如果我尝试:

        python web2py.py -a pwd -i 0.0.0.0 -p 8000

      2. 再次 - 它什么都没说(运行web2py?) 试图访问Web2Py服务器 http://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/ 要么 https://ec2-xx-xx-xx-xxx.compute-1.amazonaws.com/admin 在这两种情况下,它都说页面不可用,与上面相同。

        1. 我尝试使用IP地址,但它会立即转换为eczon-xx-xx-xx-xxx.etc的亚马逊格式......
        2. 我试图通过明确提到地址中的端口(8000)来访问web2py - 但是除了页面不可用之外没有任何理由它仍然无效
        3. 我的问题:

          1. 是否有关于如何在AWS EC2上安装和运行Web2Py的详细配方?
          2. web2py服务器是否正在运行?我怎么知道它是否正在运行?如果不是 - 我做错了什么?
          3. 如果web2py服务器正在运行,我该如何访问它?
          4. 非常感谢任何帮助。 感谢

1 个答案:

答案 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网站。