如何在EC2上开发Django以便可以访问互联网?

JPN*_*JPN 6 django amazon-ec2

我有Django应用程序.它在EC2上运行.EC2具有私有IP地址和弹性公共IP地址.

我希望Web应用程序在本地可用,以及Developer's IP地址在网络外部.

让我们将这三个IP地址定义为:

EC2_PRIVATE_IP
EC2_PUBLIC_IP
DEVELOPER_IP
Run Code Online (Sandbox Code Playgroud)

所以我做的是在EC2上运行:

python manage.py runserver 0.0.0.0:8000
Run Code Online (Sandbox Code Playgroud)

进入我的EC2安全设置,打开入站和出站端口8000到DEVELOPER_IP.

然后要求Developer在他的浏览器上转到EC2_PUBLIC_IP地址.

不幸的是,这不起作用,因为他得到错误:

Gateway Timeout: can't connect to remote host
Run Code Online (Sandbox Code Playgroud)

更新#1

我之前尝试过:

python manage.py runserver {EC2_PUBLIC_IP}:8000
Run Code Online (Sandbox Code Playgroud)

但是我得到了错误:

Error: That IP address can't be assigned-to.
Run Code Online (Sandbox Code Playgroud)

anu*_*gal 6

应使用以下url启动服务器

python manage.py runserver 0.0.0.0:8000
Run Code Online (Sandbox Code Playgroud)

在EC2安全设置中,在INBOUND设置中添加以下内容

HTTP TCP 8000 0.0.0.0/0
Run Code Online (Sandbox Code Playgroud)

然后你应该用URL访问这台机器

http://EC2_PUBLIC_IP:8000
Run Code Online (Sandbox Code Playgroud)

如果你想访问网址为

http://EC2_PUBLIC_IP
Run Code Online (Sandbox Code Playgroud)

然后在端口80上运行您的Web服务器并相应地更改EC2安全设置.


JPN*_*JPN 3

我想到了。我还需要在 Windows 防火墙上打开端口!