使用nginx+uwsgi+django部署开源项目一些经验和遇到的坑

本人的台式机是linux系统

经验:

    作为一个小白,路线是本地运行django项目---->使用uwsgi,将本地机直接做web服务器使用运行django---->联合nginx+uwsgi+django来运行(在部署过程中,由于不熟悉或者是为了寻找出错多次重复循环这个过程。

1.错误提示很重要。网页的开发者模式重要,nginx的错误提示重要(靠其解决:client intended to send too large body: 42663073 bytes,改nginx配置文件里面的内容可能还有其他),uwsgi的错误提示最好直接在窗口显示,不要写到文件里,省的再去里面找

2.最好熟悉一些常用的命令

常见的命令(以下命令皆在命令行执行):

查看进程(以uwsgi为例);
ps -ef|grep uwsgi


查看端口的使用情况(比如端口8000)
sudo lsof -i:8000

关闭某个程序占用的全部进程(以uwsgi为例):
killall -9 uwsgi


关于nginx
可以使用./nginx -t查看nginx配置的文件是否有错
./nginx 执行nginx
./nginx -s reload 重启nginx  

3.对于这种项目,最好使用装在本地的python,我之前使用pycharm一堆错(当然还有可能是其他原因)

 

坑:

1.使用本地测试的时候,想要将127.0.0.1:端口号改成自己的IP地址:端口号提供给外部访问

   将settings.py里面的ALLOWED_HOSTS改成ALLOWED_HOSTS = ['*'],然后将端口号在iptables里面设置一下,重启一下防火墙(具体可见:https://blog.csdn.net/qq_22337113/article/details/110521539)

2.在配置nginx+uwsgi+django的时候,网页显示500的错

作为小白,在没有更改代码的情况下,可以尝试修改setting_dev.py里面的DEBUG的状态(仅对我目前的项目而言,其他的不清楚,提供个思路)。

3.对于我当前的项目来说,nginx+uwsgi+django在网页端只是提供了一个界面和上传文件的操作,但是执行我的程序功能还是要从本地执行。

4.学了一点docker相关的内容(其中部分是关于配置网络的),前面视图尝试用docker解决,后来这部分的内容没有使用,但是老是会占用端口

5.在本地配置的时候,可以尝试使用多个浏览器进行测试,我是使用chromium不行(当时要疯),然后尝试使用opera(可以)的,火狐也可以

6.服务器的兼容问题,部分浏览器访问的时候直接就是空白页(和坑5是一样的)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值