经过了几天的折腾,终于搞定了项目部署,之前项目部署到虚拟机后只能在虚拟机访问,而本地是访问不了的,不过终于还是搞定了,做个笔记记录一下。
首先,将虚拟机的网络设置成桥接模式(即,当nginx设置虚拟机ip为项目链接时,局域网的其它用户可以通过此ip访问项目,也就实现了真正的部署)
接着配置自己的uwsgi(这里部署步骤简单带过,网上有教程)
setting (使用 * ,也可以用虚拟机ip代替 * ,这样局域网其它主机就可以访问项目)
启动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
一切访问正常,这样部署就完成了。
最后,试一下花生壳域名(免费的域名,很差劲,将就一下)
ok!!!
补充:
如果报错’502 Bad Gateway‘,可以看一下uwsgi配置文件的socket是否和nginx的ip、端口一一对应(不要在pycharm改,因为我们用桥接模式,即使在pycharm修改uwsgi配置文件也上传不了虚拟机,直接改虚拟机中的uwsgi配置)。