Gunicorn 已经成功启动了,并且监听在
http://0.0.0.0:5000
地址上,同时也成功启动了 4 个工作进程(-w 4
参数指定),这意味着你的 Flask 应用现在应该已经可以正常接收请求了。后续操作建议
1. 测试应用
你可以在本地通过浏览器或者使用工具(如
curl
)来测试应用是否能正常响应。假设服务器的公网 IP 地址是 211.149.236.166
,在本地的终端中执行以下 curl
命令:收起
bash
curl http://211.149.236.166:5000
如果应用正常工作,你应该能看到应用返回的响应内容。
2. 配置防火墙
如果应用无法通过公网访问,可能是服务器的防火墙阻止了外部对 5000 端口的访问。你需要开放 5000 端口,以 CentOS 系统为例,执行以下命令:
收起
bash
sudo firewall-cmd --zone=public --add-port=5000/tcp --permanent
sudo firewall-cmd --reload
3. 部署到生产环境(可选)
虽然 Gunicorn 可以作为生产环境的 WSGI 服务器,但通常还会搭配 Nginx 等反向代理服务器来提高性能和安全性。你可以配置 Nginx 将请求转发到 Gunicorn 监听的端口,以下是一个简单的 Nginx 配置示例:
收起
nginx
server {
listen 80;
server_name your_domain_or_ip;
location / {
proxy_pass http://127.0.0.1:5000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
将上述配置保存到
/etc/nginx/conf.d/your_app.conf
文件中,然后重新加载 Nginx 配置:收起
bash
sudo nginx -s reload
4. 守护进程化(可选)
为了确保 Gunicorn 进程在服务器重启或者意外退出后能自动恢复,你可以使用
systemd
来管理 Gunicorn 进程。创建一个 systemd
服务文件,例如 /etc/systemd/system/gunicorn.service
,内容如下:收起
ini
[Unit]
Description=Gunicorn instance to serve your_app
After=network.target
[Service]
User=root
Group=root
WorkingDirectory=/root/m4a_converter_project
Environment="PATH=/root/m4a_converter_project/venv/bin"
ExecStart=/root/m4a_converter_project/venv/bin/gunicorn -w 4 -b 0.0.0.0:5000 app:app
[Install]
WantedBy=multi-user.target
然后执行以下命令来启动并设置开机自启:
收起
bash
sudo systemctl start gunicorn
sudo systemctl enable gunicorn
再完成以上步骤,就可以进一步完善应用的部署和管理,确保应用在生产环境中稳定运行啦
胜利的曙光就在眼前~~
- 获取链接
- X
- 电子邮件
- 其他应用
评论
发表评论