在CentOS上部署Python Web应用通常涉及以下几个步骤:
-
安装Python环境: CentOS系统默认可能不包含Python或者版本较旧,因此首先需要安装Python环境。
sudo yum install python3 -
安装Web服务器: 常用的Web服务器有Apache和Nginx。这里以Nginx为例。
sudo yum install epel-release sudo yum install nginx -
安装WSGI服务器: WSGI(Web Server Gateway Interface)是Python Web应用和Web服务器之间的接口标准。常用的WSGI服务器有Gunicorn和uWSGI。这里以Gunicorn为例。
sudo pip3 install gunicorn -
部署Python Web应用: 假设你的Python Web应用名为
myapp,并且已经在一个虚拟环境中安装了所有依赖。-
首先,激活虚拟环境:
source /path/to/your/venv/bin/activate -
然后,使用Gunicorn启动你的应用:
gunicorn -w 4 myapp:app这里的
-w 4表示使用4个工作进程,myapp:app表示你的应用模块和应用实例。
-
-
配置Nginx: 需要配置Nginx以便将请求转发到Gunicorn。
-
创建一个新的Nginx配置文件:
sudo vi /etc/nginx/conf.d/myapp.conf -
添加以下配置:
server { listen 80; server_name your_domain_or_ip; location / { proxy_pass http://127.0.0.1:8000; # Gunicorn默认端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } -
重启Nginx以应用配置:
sudo systemctl restart nginx
-
-
设置防火墙: 如果你的服务器启用了防火墙,需要允许HTTP和HTTPS流量。
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload -
SSL证书(可选): 如果你需要HTTPS支持,可以使用Let’s Encrypt免费获取SSL证书。
sudo yum install certbot python3-certbot-nginx sudo certbot --nginx -d your_domain_or_ip
按照以上步骤,你应该能够在CentOS上成功部署Python Web应用。记得根据你的具体应用和环境调整配置。
以上就是关于“CentOS如何部署Python Web应用”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm