默认认为你已经成功部署了一个项目,想要继续部署第二个项目
-
进入 Nginx 的配置文件目录 / usr/local/nginx/conf/,然后新建一个目录:mkdir vhost,之后在 vhost 目录里建立两个以. conf 后缀的文件(有几个项目就放几个,文件名任意),里面的内容如下:
server { listen 8798; # (需要自己改) 这个就是外网访问项目的端口,不能和其他项目一样,自己选择使用哪个端口.需要在防火墙开放端口 server_name www.yuming.cn; charset utf-8; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8997; #(需要自己改) 端接口自己选择,别冲突就行,而且下面的项目xml文件里的端口要和这个一致,并且这个端口不能和其他项目的一样,可能需要将防火墙开放这个新的端口号 uwsgi_param UWSGI_script ***.wsgi; #(需要自己改) ***为项目中wsgi.py所在文件夹名(就是seetings.py所在的文件夹) 如mysite.uwsgi uwsgi_param UWSGI_CHDIR /改成/项目/路径/; #(需要自己改) 项目文件夹的决定路径,即manage.py所在的文件夹 如/data/wwwroot/mysite/ } location /static/ { alias /data/wwwroot/mysite/static/; # (需要自己改) 项目的static文件夹路径 } }
-
/usr/local/nginx/conf / 目录下的原来默认的 nginx.conf 文件,先备份一下,然后把里面的代码删除,修改成如下代码:
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; include /usr/local/nginx/conf/vhost/*.conf; # 只需要注意这里的nginx路径和你的是否一样,其他代码不用改 server { listen 80 default_server; server_name _; return 404; } }
-
新建立一个虚拟环境,把新项目上传到到服务器。进入虚拟环境,在新的虚拟环境再装一次 uwsgi,和安装项目所需依赖包
-
在第二个项目根路径创建search.xml配置文件,把以下代码复制到文件中(把1,2,3行改成你的)
127.0.0.1:8997 /data/wwwroot/***/ ***.wsgi 4 uwsgi.log -
进入项目目录启动uwsgi
uwsgi -x search.xml 注意:如果报错先结束uwsgi进程,再重启启动 killall -9 uwsgi
-
启动nginx
cd /usr/local/nginx/sbin && ./naginx 注意:如果报错,先结束进程再启动 killall -9 nginx
7.启动第二个项目方法
进入第二个项目的虚拟环境,进入项目目录,重复 *** 作一次第5和6步骤,来启动uwsgi和nginx,注意启动uwsgi时配置文件就不是上个项目的search.xml了,是当前项目目录下的你自己创建的xml文件.
nginx可以直接复制代码重启运行,每个项目的nginx是通用的
问题排解
如果输入ps -ef|grep uwsgi命令,显示类似这样
root 22654 22651 0 13:31 ? 00:00:00 uwsgi -x search.xml
root 22686 1 0 13:33 ? 00:00:00 uwsgi mysite.xml
最后有两个配置文件 search.xml mysite.xml存在,那么恭喜你就是成功启动了两个uwsgi,应该就可以两个项目同时访问了如果没有,检查步骤是否出错
可以在项目目录下的uwsgi.log以及nginx目录下的error.log查看错误信息
参考
https://www.django.cn/article/show-4.html#banqian
https://blog.csdn.net/xiaoduu/article/details/107295789
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)