阿里云环境:Ubuntu14.04
备案情况:流程全部通过
django版本:1.1
python版本:3.4
1、准备工具XShell,XFtp
下载安装XShell和XFtp,这两个个人和学校使用是免费的,用了一下,感觉不错。连接方法,和putty一样就可以连接阿里的主机了。
2、安装pip3
sudo apt-get install python3-pip
3、安装django
pip3 install django
4、安装uwsgi
pip3 install uwsgi
5、安装nginx
sudo apt-get install nginx
6、测试uwsgi
a)部署测试代码
代码名称: test.py
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"to be continue..."]
b)命令行内运行
uwsgi --http :8001 --wsgi-file test.py
c)验证
购买阿里云服务器后,会被自动分配一个公网ip,这里直接使用公网ip作为验证(括号公 的那个ip):
打开浏览器,在浏览器内输入ip和端口,出现返回的字符串,如图:
验证成功。
7)django代码部署:
不会django部署就别看了,浪费时间,先去官方看看教程走走,起码你自己的127.0.0.1的流程要走起来。
我的django文件夹名为mysite,个人的路径为/home/work/mysite/
8)连接django和uwsgi
a)写一个配置xml文件,名称为mysite_socket.xml,位置在/home/work/mysite/mysite_socket.xml,代码配置如下:
<uwsgi>
<socket>:8077</socket>
<chdir>/home/work/mysite</chdir>
<module>mysite.wsgi</module>
<processes>4</processes>
<daemonize>uwsgi.log</daemonize>
</uwsgi>
需要特殊说明的是,8077端口不能被其它程序占用了,不然的话没法用。
b)建立nginx日志文件夹:
我的位置建在:/home/work/logs/nginx
c)写nginx的配置文件,名称mysite.conf:
server{
listen 80;
server_name [你的域名或者是你的公网ip];
access_log /home/work/logs/nginx/access.log;
error_log /home/work/logs/nginx/error.log;
charset utf-8;
location / {
include /etc/nginx/uwsgi_params;
uwsgi_pass 127.0.0.1:8077;
}
location /static {
alias /home/work/mysite/static;
}
}
d)准备nginx工作
拷贝mysite.conf文件到/etc/nginx/site-enable/文件夹下
执行命令:
nginx -s reload
e)执行uwsgi:
进入到前面写的uwsgi的xml配置文件夹目录下,也就是mysite_socket.xml的目录
执行命令:
uwsgi -x mysite_socket.xml
9)测试
浏览器内输入你的域名或者ip,因为此处我们监听的是80端口,所以无需在ip或者域名后面填写端口,80是默认端口,这样,通过互联网就可以访问你的网站了,我的效果如下
附上此次我学习的参考网站链接,感谢他们。
https://docs.djangoproject.com/en/1.10/topics/
https://www.zhihu.com/question/54982081
http://www.cnblogs.com/feixuelove1009/p/5974597.html
http://www.python88.com/topic/101/
uwsgi的重启:
1、使用如下关闭所有uwsgi进程
killall -9 uwsgi
2、重新启动对应的参数文件即可.