本人環境centos 6.x,是剛裝上的系統。css
centos IP:192.168.1.1html
python:2.7.11python
django:1.9.5nginx
nginx:1.10.1django
進去服務器後 就是安裝一大堆東西。centos
pip(下載django,uwsgi須要用pip下載)服務器
yum install wget -y wget https://pypi.python.org/packages/e7/a8/7556133689add8d1a54c0b14aeff0acb03c64707ce100ecd53934da1aa13/pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a tar zxvf pip-8.1.2.tar.gz cd ./pip-8.1.2 wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz tar zxvf setuptools-0.6c11.tar.gz cd setuptools-0.6c11 python setup.py build python setup.py install cd ../ python setup.py install
而後利用pip下載django和uwsgiapp
pip install django==1.9.5 pip install uwsgi
下載完成以後就能夠把你所寫的項目放到服務器上面。我這裏距離是放在/project/socket
而後測試djangotcp
python /project/manage.py runserver 192.168.1.1:8000 #按需求更改IP
而後內網訪問192.168.1.1:8000,若是能夠正常訪問則OK。
uwsgi
首先新建1個test.uwsgi.py文件在項目的根目錄。即/project (與manage.py同目錄)
文件內容以下:
1 #coding:utf-8 2 import os 3 import sys 4 reload(sys) 5 sys.setdefaultencoding('utf8') 6 7 from django.core.wsgi import get_wsgi_application 8 9 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings") #project爲項目名,請按需求修改 10 11 application = get_wsgi_application()
uwsgi的話有2種開啓方法
第一種是直接在命令行輸入命令打開,如:
uwsgi --http 192.168.1.1:8000 --chdir /project --module test_uwsgi --chmod-socket=666
第二種就是添加ini或xml配置文件
新建文件test.ini在項目根目錄
vi /project/test.ini [uwsgi] http = 192.157.1.1:8000 #監聽IP和端口 chdir = /project #項目根目錄 module = test_uwsgi #uwsgi文件,注意不用把後綴.py加上去 processes = 4 #開啓4個進程(按需更改) threads = 2 #每一個進程開啓4個線程 enable-threads = True #支持線程啓動 daemonize = /var/log/uwsgi.log #後臺啓動,並把日誌記錄到指定文件 buffer-size = 21573 stats = 192.157.1.1:9000
示例中用的是ini配置文件,如需使用xml配置,請另行百度xml配置文件。更多的參數使用也能夠自行百度添加上去
當ini配置文件寫好後執行
uwsgi --ini /project/blog.ini #--ini 表示使用ini配置文件,xml文件就用--xml
作完這些以後就訪問192.168.1.1:8000端口,如無心外的話是能夠訪問成功的,可是我搭建的時候是能夠訪問成功,可是訪問不了css,js,圖片等靜態文件。
若是出現問題沒法訪問成功,請仔細閱讀啓動uwsgi以後彈出來的一系列信息,裏面通常都包含有錯誤信息。按照提示修改便可。
由於網頁能夠訪問成功並且靜態文件原本就是打算放在nginx上讓用戶直接訪問,因此我就繼續把配置進行下去了。
安裝nginx
由於途方便,因此我直接選擇yum 安裝。
wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm chmod +x nginx-release-centos-6-0.el6.ngx.noarch.rpm rpm -i nginx-release-centos-6-0.el6.ngx.noarch.rpm yum install nginx -y
如沒法安裝成功,就在百度上搜其餘的安裝方法把nginx裝上。
安裝成功以後,nginx的目錄會在/etc/nginx 下
接下來就要修改nginx 的默認配置了。
查看默認配置文件
cat /etc/nginx/nginx.conf user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; include /etc/nginx/conf.d/*.conf; }
這是個人默認配置文件,若是我沒記錯的話應該是沒作過任何修改的。請確保裏面有include /etc/nginx/conf.d/*.conf;這行
這行的意思就是包含了全部/etc/nginx/conf.d/下 後綴是.conf的配置文件
而後咱們在/etc/nginx/conf.d/目錄下建立test.conf
vi /etc/nginx/conf.d/test.conf server{ listen 80 ; #監聽80端口 access_log /var/log/nginx/access.log; #日誌文件位置 error_log /var/log/nginx/error.log; location / {#訪問/時 include uwsgi_params; #加載uwsgi模塊 proxy_pass http://192.168.1.1:8000; #將鏈接轉到該IP } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location /static/ { alias /project/static/; #訪問/static時直接訪問到/project/static } }
而後就大功告成了。當用戶直接訪問192.168.1.1:80 時 nginx 就會把鏈接轉到192.168.1.1:8000上。
若是文章內有出錯的地方,或者對文章有任何意見,可在評論下說明。