要在CentOS上将Python应用程序与Nginx集成,您需要遵循以下步骤:
首先,确保您的系统已更新并安装了EPEL和Remi存储库。这将使您能够轻松地安装和管理Python和Nginx软件包。
sudo yum install epel-release
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
使用Remi存储库安装所需的Python版本(例如,Python 3.8)以及uWSGI软件包。
sudo yum-config-manager --enable remi-php74
sudo yum install python38 python38-pip uwsgi uwsgi-plugin-python3
安装Nginx并启动服务。
sudo yum install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
创建一个新的Nginx配置文件,以便将请求代理到uWSGI。
sudo vi /etc/nginx/conf.d/your_app.conf
在打开的文件中,添加以下内容(根据您的应用程序需求进行修改):
server {
listen 80;
server_name your_domain.com;
location / {
include uwsgi_params;
uwsgi_pass unix:/tmp/your_app.sock;
}
}
保存并关闭文件。
创建一个新的uWSGI配置文件,以便与您的Python应用程序一起使用。
sudo vi /etc/uwsgi/apps-available/your_app.ini
在打开的文件中,添加以下内容(根据您的应用程序需求进行修改):
[uwsgi]
module = your_app:app
master = true
processes = 5
socket = /tmp/your_app.sock
chmod-socket = 660
vacuum = true
die-on-term = true
保存并关闭文件。
创建一个符号链接,将uWSGI配置文件链接到sites-enabled目录。
sudo ln -s /etc/uwsgi/apps-available/your_app.ini /etc/uwsgi/apps-enabled/
启动uWSGI服务并将其设置为开机启动。
sudo systemctl start uwsgi
sudo systemctl enable uwsgi
重新加载Nginx以应用更改。
sudo systemctl reload nginx
现在,您的Python应用程序应已成功与Nginx集成。访问您在Nginx配置文件中指定的域名,您应该能够看到您的Python应用程序。