gpt4 book ai didi

python - 在 Amazon EC2 上启动 http 服务器

转载 作者:太空狗 更新时间:2023-10-30 00:03:28 25 4
gpt4 key购买 nike

我正在尝试在 Amazon EC2 实例上设置和访问一个简单的 Python http 服务器。服务器在 localhost:80 下本地运行,但我无法让它在 EC2 实例上运行。

我将一个弹性 IP 连接到该实例,它至少可以在该 IP 上访问 ssh。

我认为问题在于我错误地设置了 HTTPServer 的 server_address: Python HTTPServer documentation因为实在是没有头绪,所以在家里配置了路由器,将HTTP请求转发到电脑的本地IP,192.168.1.xx

我认为这可能是一个安全组问题,所以我添加了源为 0.0.0.0/0 的入站 HTTP(我认为应该允许所有传入 IP)并设置端口 80,无需更改任何选项。

此外,我认为在端口 80 上的 sudo 下运行服务器脚本存在潜在的安全风险。有什么办法可以在另一个端口(例如 8080 而不是 80)下转发请求?

最佳答案

从安全的角度来看,在常规 http 服务器后面运行脚本可能会更好。

这是 NginX 的配置这应该让你开始(把这个文件放在 /etc/nginx/conf.d/):

upstream myscript  {
server localhost:8080;
}

server {
server_name _;
listen 80;
location = / {
proxy_pass http://myscript;
}
}

在此设置中,您在端口 8080 上运行脚本(使用 server_address = ('localhost', 8080) 在 python 脚本中配置您的 HTTPServer)。

因此,当查询在端口 80 上命中 nginx 时,它会将其转发到您的脚本负责的本地主机端口 8080。

关于python - 在 Amazon EC2 上启动 http 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15123492/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com