环境: 腾讯云服务器Centos 7 64位 ;
Nginx : 1. 下载: wget nginx-1.13.9.tar.gz , 解压 安装 ./configure —prefix= /usr/local/nginx;
启动:
$ /usr/local/nginx/sbin/nginx
检查是否启动成功:
打开浏览器访问此机器的 IP,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功。
部分命令如下:
重启:$ /usr/local/nginx/sbin/nginx –s reload
停止:$ /usr/local/nginx/sbin/nginx –s stop
测试配置文件是否正常:$ /usr/local/nginx/sbin/nginx –t
强制关闭:$ pkill nginx
安装Django :
在安装之前,首先安装 yum install python-devl,gcc,setuptools,openssl ,openssl-devel;
在此使用的时python3.6.3版本, wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz ;
解压 tar -zxvf Python-3.6.3.tgz;
进入python解压包中,执行: ./configure —prefix= /usr/local/python36, 然后编译安装: make &&make install ;
安装完成之后,因为Linux内部已有自带的python2版本,在此不要随意覆盖(会出现一系列的问题);
cd /etc/bin建立python3的软连接 ,
ln -s /usr/local/python36/bin/python3 /usr/bin/python3 ;
由于购买的是腾讯云服务器,发现没有pip, 同样步骤建立pip3的软连接: ln -s /usr/local/python36/bin/pip3 /usr/bin/pip3; 完成以后,输入 python3 —version 即可查询python的版本,输入python即是系统自带python版本; pip同理;
在上述步骤完成之后, 运行pip3 install Django , pip3 install uwsgi,安装好之后要和上面一样,将django-admin.py, Django-admin, uwsgi 建立软连接, ln -s /usr/local/python36/bin/django-admin.py /usr/bin/django-admin.py ; ln -s /usr/local/python36/bin/django-admin /usr/bin/django-admin; ln -s /usr/local/python36/bin/uwsgi /usr/bin/uwsgi ;之后依次运行:
yum installzlib-devel,libjpeg-turbo-devel,pillow < Django 依赖包>
$ django-admin startproject mysite
$python manage.py runserver 0.0.0.0:8000, 打开浏览器即可看到django的首页面;
为验证安装的uwsgi是否成功,输入 uwsgi —version:查看版本号 或者新建一个hello.py文件:
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World”]
保存退出, $ uwsgi --http :8000 --wsgi-file hello.py
在浏览器中即可看到 hello world
配置nginx 和uwsgi ,首先得先说明我的项目文件夹目录如下图所示:
![](https://img.haomeiwen.com/i4286925/c8107dbe63276722.png)
在项目mysite文件夹下新建一个test文件夹 mkdir test(名称没有限制),在test文件夹中新建一个名为uwsgi.ini文件vim uwsgi.ini,配置的信息如下:
[uwsgi]
# 项目目录
chdir=/root/mysite
# 指定项目的application
# module=mysite.wsgi:application
# 进程个数
workers=5
pidfile=/root/mysite/script/uwsgi.pid
# 指定IP端口
http=127.0.0.1:9090
# 指定静态文件
static-map=/static=/root/mysite/static
# 启动uwsgi的用户名和用户组
uid=root
gid=root
# 启用主进程
master=true
# 自动移除unix Socket和pid文件当服务停止的时候
vacuum=true
# 序列化接受的内容,如果可能的话
thunder-lock=true
# 启用线程
enable-threads=true
# 设置自中断时间
harakiri=30
# 设置缓冲
post-buffering=4096
# 设置日志目录
daemonize=/root/mysite/script/uwsgi.log
# 指定sock的文件路径
socket=/root/mysite/script/uwsgi.sock
max-requests =1000
:wq(保存)
![](https://img.haomeiwen.com/i4286925/95c4e5f32369fd02.png)
然后,vim /usr/local/nginx/conf/nginx.conf,如下图所示:
mysql 安装
参考资料:http://www.chenxm.cc/post/275.html
http://www.runoob.com/django/django-nginx-uwsgi.html
https://blog.csdn.net/cxm19881208/article/details/62047392
配置nginx绑定支持http与https的域名:
vim nginx安装目录/url/local/nginx/nginx.conf,详细配置如下:
server {
listen 80;
charset utf-8;
server_name www.onexing.cn;
return 301 https://$server_name$request_uri;
}
server {
listen 443;
server_name www.onexing.cn; #填写绑定证书的域名
ssl on;
ssl_certificate 1_www.onexing.cn_bundle.crt;
ssl_certificate_key 2_www.onexing.cn.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;
charset utf-8;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
include uwsgi_params; # 导入一个Nginx模块他是用来和uWSGI进行通讯的
uwsgi_pass 127.0.0.1:8000;
uwsgi_connect_timeout 30; # 设置连接uWSGI超时时间
uwsgi_read_timeout 1800;
uwsgi_send_timeout 300;
proxy_read_timeout 300;
root /root/mysite;
index index.html index.htm;
}
location ^~ /static/ {
root /root/mysite/; # 项目目录
}
网友评论