一、部署Python网站项目
实验要求
配置Nginx使其可以将动态访问转交给uWSGI
安装Python工具及依赖
1)拷贝软件到proxy主机
[root@server1 ~]# scp -r /linux-soft/s2/wk/python/ 192.168.99.5:/root
2)安装python依赖软件
[root@proxy ~]# yum -y install gcc make python3 python3-devel
3)安装python网站的依赖包,python的软件包使用pip3安装
[root@proxy ~]# cd /root/python/
[root@proxy python]# pip3 install pytz-2022.6-py2.py3-none-any.whl
[root@proxy python]# pip3 install Django-1.11.8-py2.py3-none-any.whl
[root@proxy python]# pip3 install django-bootstrap3-11.0.0.tar.gz
4)测试python网站
[root@proxy python]# tar -xf python-project-demo.tar.gz #网站代码
[root@proxy python]# cd python-project-demo/
[root@proxy python-project-demo]# python3 manage.py runserver 0.0.0.0:8000 #manage.py相当于网站运行的引导文件
在浏览器访问192.168.99.5:8000,启动网站的页面信息显示就是正常,web页面标题显示首页两字,页面暂时没有内容
此时可以测试完毕后按ctrl + c
注意:测试时如果无法连接外网,可能需要将python-project-demo/learning_logs/templates/base.html文件中的特效注释,注释的两行主要作用为美化网站
...
<!-- {% bootstrap_css %}
{% bootstrap_javascript %}
-->
...
重新启动网站,结果显示如图;测完之后 ctrl c停止服务
[root@proxy python-project-demo]# python3 manage.py runserver 0.0.0.0:8000
image-20240821151151055
安装uWSGI并编写配置文件
1)安装uWSGI
[root@proxy python-project-demo]# cd ..
[root@proxy python]# pip3 install uWSGI-2.0.21.tar.gz
准备配置文件(默认没有配置文件,需要自己写),运行动态网站,
[root@proxy python]# vim myproject.ini #要以ini结尾,文件名随意
[uwsgi]
socket=127.0.0.1:8000 #与web服务(nginx)通信的接口
chdir=/root/python/python-project-demo #网站的工作目录
wsgi-file=learning_log/wsgi.py #定义网站运行时,uwsgi调用的脚本文件
daemonize=/var/log/uwsgi.log #指定日志文件位置
2) 运行uWSGI
[root@proxy python]# uwsgi --ini myproject.ini #读取myproject.ini运行uWSGI
[uWSGI] getting INI configuration from myproject.ini
[root@proxy python]# ss -antlp | grep 8000 #8000已经监听,成功启动
3)修改nginx配置文件,添加uWSGI转发
[root@proxy python]# vim /usr/local/nginx/conf/nginx.conf
...
location / {
uwsgi_pass 127.0.0.1:8000; #动态页面交给uWSGI
include uwsgi_params; #加载调用uWSGI配置文件
root html;
index index.html index.htm;
}
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
expires 30d;
}
...
[root@proxy python]# /usr/local/nginx/sbin/nginx
4)测试
使用浏览器访问192.168.99.5
一、部署Python网站项目
实验要求
配置Nginx使其可以将动态访问转交给uWSGI
安装Python工具及依赖
1)拷贝软件到proxy主机
[root@server1 ~]# scp -r /linux-soft/s2/wk/python/ 192.168.99.5:/root
2)安装python依赖软件
[root@proxy ~]# yum -y install gcc make python3 python3-devel
3)安装python网站的依赖包,python的软件包使用pip3安装
[root@proxy ~]# cd /root/python/
[root@proxy python]# pip3 install pytz-2022.6-py2.py3-none-any.whl
[root@proxy python]# pip3 install Django-1.11.8-py2.py3-none-any.whl
[root@proxy python]# pip3 install django-bootstrap3-11.0.0.tar.gz
4)测试python网站
[root@proxy python]# tar -xf python-project-demo.tar.gz #网站代码
[root@proxy python]# cd python-project-demo/
[root@proxy python-project-demo]# python3 manage.py runserver 0.0.0.0:8000 #manage.py相当于网站运行的引导文件
在浏览器访问192.168.99.5:8000,启动网站的页面信息显示就是正常,web页面标题显示首页两字,页面暂时没有内容
此时可以测试完毕后按ctrl + c
注意:测试时如果无法连接外网,可能需要将python-project-demo/learning_logs/templates/base.html文件中的特效注释,注释的两行主要作用为美化网站
...
<!-- {% bootstrap_css %}
{% bootstrap_javascript %}
-->
...
重新启动网站,结果显示如图;测完之后 ctrl c停止服务
[root@proxy python-project-demo]# python3 manage.py runserver 0.0.0.0:8000
image-20240821151151055
安装uWSGI并编写配置文件
1)安装uWSGI
[root@proxy python-project-demo]# cd ..
[root@proxy python]# pip3 install uWSGI-2.0.21.tar.gz
准备配置文件(默认没有配置文件,需要自己写),运行动态网站,
[root@proxy python]# vim myproject.ini #要以ini结尾,文件名随意
[uwsgi]
socket=127.0.0.1:8000 #与web服务(nginx)通信的接口
chdir=/root/python/python-project-demo #网站的工作目录
wsgi-file=learning_log/wsgi.py #定义网站运行时,uwsgi调用的脚本文件
daemonize=/var/log/uwsgi.log #指定日志文件位置
2) 运行uWSGI
[root@proxy python]# uwsgi --ini myproject.ini #读取myproject.ini运行uWSGI
[uWSGI] getting INI configuration from myproject.ini
[root@proxy python]# ss -antlp | grep 8000 #8000已经监听,成功启动
3)修改nginx配置文件,添加uWSGI转发
[root@proxy python]# vim /usr/local/nginx/conf/nginx.conf
...
location / {
uwsgi_pass 127.0.0.1:8000; #动态页面交给uWSGI
include uwsgi_params; #加载调用uWSGI配置文件
root html;
index index.html index.htm;
}
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
expires 30d;
}
...
[root@proxy python]# /usr/local/nginx/sbin/nginx
4)测试
使用浏览器访问192.168.99.5