首先我们要将我们需要使用的端口在安全组中打开,阿里云默认是不打开的。我们在安全组规则页面中点击添加规则: 0.0.0.0/0表示任何ip都可以访问,我们要将我们需要的所有端口都打开,这里我将我使用的80, 8000和8080端口打开了:
进入项目目录,创建uwsgi.ini文件:
cd Titanic vim uwsgi.ini在文件里添加如下内容:
[uwsgi] # 使用nginx连接时使用 socket=127.0.0.1:8000 #http=0.0.0.0:8000 # 项目目录 chdir=/root/python/mess/Titanic # wsgi.py路径 wsgi-file=Titanic/wsgi.py # 指定进程数 processes=4 # 指定线程数 threads=2 # 在进程中有一个主进程 master=True # 保存启动后主进程的pid pidfile=uwsgi.pid # 设置uwsgi后台运行 daemonize=uwsgi.lognginx要实现反向代理和动静分离的工作,我们创建一个目录用来储存django的静态文件
mkdir -p /var/www/Titanic/static/ # 目录可以自己选定然后在settings.py中加入如下设置:
STATIC_ROOT = '/var/www/Titanic/static'收集django的静态文件:
python manage.py collectstatic上述命令会将我们的项目使用的所有静态文件都收集到我们刚刚创建的文件夹中 接下来就是配置nginx.conf了:
server { listen 80; # 这里监听80端口 server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; # location / { # root html; # index index.html index.htm; # uwsgi_pass 127.0.0.1:8000; # include /usr/local/nginx/conf/uwsgi.params # } location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8000; # 跳转至uwsgi } # 静态文件请求,如果你的settings.py中static_url不等于/static/,那么匹配规则也要相应修改 location /static { # 指定静态文件目录,如果是静态文件则nginx直接请求获取 alias /var/www/Titanic/static/; }