Django部署到虚拟机后通过本地访问项目

经过了几天的折腾,终于搞定了项目部署,之前项目部署到虚拟机后只能在虚拟机访问,而本地是访问不了的,不过终于还是搞定了,做个笔记记录一下。

首先,将虚拟机的网络设置成桥接模式(即,当nginx设置虚拟机ip为项目链接时,局域网的其它用户可以通过此ip访问项目,也就实现了真正的部署)

Django部署到虚拟机后通过本地访问项目_第1张图片

接着配置自己的uwsgi(这里部署步骤简单带过,网上有教程)
Django部署到虚拟机后通过本地访问项目_第2张图片

setting (使用 * ,也可以用虚拟机ip代替 * ,这样局域网其它主机就可以访问项目)
在这里插入图片描述

配置nginx
Django部署到虚拟机后通过本地访问项目_第3张图片
Django部署到虚拟机后通过本地访问项目_第4张图片

启动uwsgi
切换到uwsgi配置文件的位置,uwsgi --ini uwsgi_conf.ini(配置文件名)

启动nginx
sudo /etc/init.d/nginx start

测试nginx配置文件是否正确
sudo nginx -t -c /etc/nginx/nginx.conf(配置文件路径)
# 打印如下内容,则没问题
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

(每一次修改nginx配置后需要)重新加载配置
sudo nginx -s reload -c /etc/nginx/nginx.conf (配置文件路径)

然后,打开本地浏览器,输入ip
Django部署到虚拟机后通过本地访问项目_第5张图片
Django部署到虚拟机后通过本地访问项目_第6张图片
一切访问正常,这样部署就完成了。

最后,试一下花生壳域名(免费的域名,很差劲,将就一下)
Django部署到虚拟机后通过本地访问项目_第7张图片
Django部署到虚拟机后通过本地访问项目_第8张图片
Django部署到虚拟机后通过本地访问项目_第9张图片
ok!!!

补充:
如果报错’502 Bad Gateway‘,可以看一下uwsgi配置文件的socket是否和nginx的ip、端口一一对应(不要在pycharm改,因为我们用桥接模式,即使在pycharm修改uwsgi配置文件也上传不了虚拟机,直接改虚拟机中的uwsgi配置)。

你可能感兴趣的:(python)