在你项目的根目录中建立mysite.xml(名字无所谓
),或者建立mysite.ini,输入如下内容:nginx
<uwsgi> <socket>127.0.0.1:8000</socket> <!-- 内部端口,自定义 --> <chdir>/data/project1</chdir> <!-- 项目路径 --> <module>project1.wsgi</module> <!-- mysite为wsgi.py所在目录名--> <!-- 由于是module(模块),因此用 . 表示下一级--> <processes>4</processes> <!-- 进程数 --> <daemonize>uwsgi.log</daemonize> <!-- 日志文件 --> </uwsgi>
[uwsgi] # Django-related settings # the base directory (full path) chdir = /opt/mysite # Django's wsgi file module = mysite.wsgi # the virtualenv (full path) home = /opt/venv # process-related settings # master master = true # maximum number of worker processes processes = 1 # the socket (use the full path to be safe socket = 0.0.0.0:8000 # ... with appropriate permissions - may be needed # chmod-socket = 664 # clear environment on exit vacuum = true
保存退出vim
cd /home/downloads/ wget http://nginx.org/download/nginx-1.13.7.tar.gz 下载完解压 tar -zxvf nginx-1.13.7.tar.gz 解压完进入文件夹,执行编译安装 ./configure make make install
为了防止意外,在***/conf/中备份一下nginx.conf文件 app
cd /usr/local/nginx/conf/ cp nginx.conf nginx.conf.bak
打开这个配置文件,删除 全部内容,加入如下内容(括号太多,注释太多,简便操做,后期须要什么,就按照配置文件中的格式再往里面加
)socket
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; server { listen 80; server_name www.i-sekai.site; #改成本身的域名,没域名修改成127.0.0.1:80 charset utf-8; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8000; #端口要和uwsgi里配置的同样 uwsgi_param UWSGI_SCRIPT mysite.wsgi; #wsgi.py所在的目录名+.wsgi(解释过了) uwsgi_param UWSGI_CHDIR /data/project1; #项目路径 } location /static/ { alias /data/project1/static/; #静态资源路径 } #媒体文件也要放在这里吧? } }
在配置中(.conf)可能会出现错误,post
/usr/local/nginx/sbin/nginx -t 测试配置文件是否正确 vim /usr/local/nginx/conf/nginx.conf 改写配置文件
cd /usr/local/nginx/sbin/ ./nginx 此时,nginx已经启动了。
cd /data/project1/ uwsgi -x mysite.xml 配置生效 /usr/local/nginx/sbin/nginx -s reload
重启nginx,网站打开你的域名
测试
必定要注意Uwsgi和Nginx配置文件里的项目路径和静态资源路径,填写正确了才能成功访问。否则会出现502错误。还有就是,修改Django文件和其它配置文件以后,必定要重启Uwsgi和Nginx,否则不生效。网站
中止uwsgispa
ps -ef | grep uwsgi killall -9 uwsgi
启动uwsgi日志
uwsgi -x mysite.xml
重启nginxcode
/usr/lcoal/nginx/sbin/nginx -s reload
cd /etc vim profile 将PATH=$PATH:/usr/local/nginx/sbin添加到最后,wq。 source profile nginx 能够直接使用,无需加前面的/usr/local/nginx/sbin