nginx+uwsgi+django+mysql

来源:互联网 发布:软件测试编写目的 编辑:程序博客网 时间:2024/05/21 06:01
几个月时间过去了,一直忙于其他事情没来写写文章,今天刚好有空写下前段时间弄的xx系统部署(中间部署两次)
采用的是:nginx+uwsgi+django+mysql

nginx 的安装与启动很好的例子
http://www.nginx.cn/install
https://www.baidu.com/link?url=npxYnClmjMyZVCugrgnxFWIb7M6WT7lnuynIg5rZdXGfGHMkpDG6KvePBn6IwPtWmlnHiMTZ3f9kbXbIgXkxqLCnrlYSb8Z_iH6i0ffVzUC&wd=&eqid=a036e4b4000033c00000000658d9ce7d
别人的使用例子
http://tyjhz.blog.51cto.com/8756882/1426185


部署环境:centos 6.8   \ gcc-4.4.7  \mysql  5.1.73
中间安装过的软件:
 \django=1.11\ mysqlclient=1.3.12 django-cors-headers \ mysql-devel
uwsgi \nginx \

uwsgi +nginx+django  

配置如下:
nginx 
    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        access_log  logs/host.access.log;

        location / {
                include uwsgi_params;
                        uwsgi_pass 127.0.0.1:10086;
                        uwsgi_param UWSGI_SCRIPT ZNXY.wsgi;
                        uwsgi_param UWSGI_CHDIR /ZNXY;
        }
        location /static{
                expires 30d;
                autoindex on;
                add_header Cache-Control private;
                #alias /home/django/znxy08/znxy/ZNXY/static;
                alias /mnt/znxy08/znxy/ZNXY/static;

        }
}


nginx -s reload  :修改配置后重新加载生效



再次安装(因为数据库奔溃了,我一怒之下重新安装了一次linux系统,下面是系统安装后的记录过程):
yum install mysql*
yum install lrzsz 

将数据导入数据库
 
安装nginx
yum install gcc-c++
yum install -y pcre pcre-devel
yum install -y openssl openssl-devel
yum install wget
 wget https://nginx.org/download/nginx-1.12.1.tar.gz
tar -xvf nginx-1.12.1.tar.gz
./configure
make
make install

cd /usr/local/nginx/sbin/
./nginx 
./nginx -s stop
./nginx -s quit
./nginx -s reload

安装uwsgi 和python3
下载python3:
https://www.python.org/ftp/python/3.6.1/Python-3.6.1rc1.tgz
./configure --prefix=/usr/local/python3
make
make install
echo 'export PATH=$PATH:/usr/local/python3/bin' >> ~/.bashrc
pip 不用装,本身python3 安装时默认安装
mysqlclient==1.3.10
django==1.11
django-cors-headers
pip3 install uwsgi
上传web资料
修改项目下面的myweb_uwsgi.ini文件
#myweb_uwsgi.ini file
[uwsgi]

# Django-related settings


socket = :10086

# the base directory (full path)
chdir           = /mnt/znxy08/znxy/ZNXY

# Django s wsgi file
module          = ZNXY.wsgi

# process-related settings
# master
master          = true

# maximum number of worker processes
processes       = 4

# ... with appropriate permissions - may be needed
# chmod-socket    = 664
# clear environment on exit
vacuum          = true

部署时遇到的问题

 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
 成功部署:启动:
[root@host ZNXY]# nohup uwsgi --ini myweb_uwsgi.ini