阿里云ECSserver部署django
server安装的是Centos 系统。
uwsgi是使用pip安装的。
nginx是使用yum install nginx安装。
python 2.7, mysql 5.5使用 yum安装。
它们之间的逻辑关系例如以下:
the web client <-> the web server <-> the socket <-> uwsgi <-> Django
uswgi负责从Django拿内容,通过socket传给 web server如nginx, 最后显示到 网页浏览器。
在django的项目下,建文件 uswgi.ini。能够不用在uswgi后面写一串选项。
# uwsgi.ini file
[uwsgi] # Django-related settings
# the base directory (full path)
chdir = /var/www/html/
# Django's wsgi file
module = app.wsgi:application
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 10
# the socket (use the full path to be safe
#socket = 127.0.0.1:8001
socket = /tmp/site.sock
# ... with appropriate permissions - may be needed
chmod-socket = 666
# clear environment on exit
vacuum = true
process = 4
threads = 2
# Django's wsgi file这个相应你自己Django项目的就好。
chdir就是Django的所在文件夹,和manage.py同一文件夹。
其它能够默认。
相同建立nginx.conf
# nginx.conf # the upstream component nginx needs to connect to
upstream django {
server unix:///tmp/site.sock; # for a file socket
#server 127.0.0.1:8001; # for a web port socket (we'll use this first)
} # configuration of the server
server {
# the port your site will be served on
listen 80;
# the domain name it will serve for
server_name demo.mmm.com; # substitute your machine's IP address or FQDN
charset utf-8; # max upload size
client_max_body_size 128M; # adjust to taste # Django media
location /media {
alias /var/www/html/media; # your Django project's media files - amend as required
} location /static {
alias /var/www/html/static; # your Django project's static files - amend as required
} # Finally, send all non-media requests to the Django server.
location / {
uwsgi_pass django;
include /var/www/html/uwsgi_params; # the uwsgi_params file you installed
}
}
uwsgi_pass django; 中的django和upstream django 相相应。
两头的socket名字要一样。uwsgi里要改sock的权限为666,默认的664,nginx会连不上,在/var/log/nginx/error.log里能够看到connect is denied。
据说使用socket比port要好,注意unix://这个前缀。加上后面sock的路径,是3个///,看起来不好看。
不管使用socket还是TCPport。uwsgi的socket和nginx的server值要相应,否则没法接通路径。
server_name demo.mmm.com; 看文章时,把server_name这个词看成域名。给改动掉,结果nginx启动失败。能够用域名或者IP。
ln -s /var/www/html/nginx.conf /etc/nginx/conf.d/
链接后,这样在conf.d 配置文件夹里会有Django下建立的nginx.conf,比較方便。
uwsgi_params文件在/etc/nginx以下有,老外说是复制到Django文件夹下。不知道直接使用会有什么差别。
最后:
使用chkconfig nginx on 把nginx设置成自启动服务。
在/etc/rc.local里加一行 uwsgi /var/www/html/uwsgi.ini --uid www --gid www
我没加uid和gid,以root执行uwsgi会被警告的。
原来是打算用apache的,所以有个/var/www/html文件夹。mod-python报错后,不知道怎么处理。
系统自带Python2.6,mod-python就是调用的2.6。
nginx不能从uwsgi获得数据时,就会输出nginx的默认页面。还会输出 Bad Gateway提示。
linux最大的麻烦是。程序和配置文件分散。安装程序,我不知道它在哪里。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
阿里云ECSserver部署django的更多相关文章
- 如何在阿里云服务器部署Django
这段时间一直在搞我的网站——大学易,一个大学生评课网站,主要是提供课程的详尽信息(比如老师会不会经常点名,有没有期中考试),课程资料的下载等等. 这篇文章主要是分享给那些菜鸟,就是像我一样完全没有搞过 ...
- 阿里云 Centos7 部署 Django 项目
前期准备 阿里云服务器 mysql数据库 已经本地运行成功的项目 阿里云服务器的环境配置 Git #代码管理 Gitlab #代码托管,要求服务器内存不低于2G,我选择放弃 Mysql #连接数据库 ...
- 阿里云 centos 部署 Django 可能遇到的问题
问题一:版本限制 File "/Users/icourt/Desktop/hf/venv/lib/python3.7/site-packages/django/db/backends/m ...
- 【阿里云产品公测】阿里云ACE部署通用完整教程及评测
[阿里云产品公测]阿里云ACE部署通用完整教程及评测 作者:阿里云用户bailimei ACE应该是目前在公测的服务中应用最广泛的一项服务.在公测云引擎ACE前曾使用过新浪SAE,而ACE给我的最初印 ...
- 阿里云 centos 部署javaweb 应用
今天在阿里云上部署了个javaweb应用,在此记录下步骤,以供下次使用. 服务器版本: 1.root登陆服务器 2.服务器安装FTP服务,或者直接使用winscp上传文件(简单),本文介绍安装FTP服 ...
- 阿里云ECS部署ES
背景 最近越来越多的公司把业务搬迁到云上,公司也有这个计划,自己抽时间在阿里云和Azure上做了一些小的尝试,现在把阿里云上部署ES和kibana记录下来.为以后做一个参考,也希望对其他人有帮助. 这 ...
- 阿里云服务器部署Office online注意事项
阿里云服务器部署Office online注意事项 一.参考配置 实例规格:4核8GB(IO优化) 网络带宽:5Mbps 系统盘:40G 存储盘:200G OS:Windows Server 2016 ...
- 阿里云上部署了zabbix,突然无法收到报警邮件的解决办法
在阿里云上部署了zabbix,一直能正常接收到zbx发来的报警邮件(报警邮箱是163的),不知是什么原因,突然无法接收到报警邮件了. 但在服务器上手动执行echo "hello"| ...
- 阿里云Ubuntu部署java web - 文件夹
文件夹(点击章节标题阅读): 阿里云Ubuntu部署java web(1) - 系统配置 ssh链接server(使用终端远程链接) 加入用户 给用户赋予运 ...
随机推荐
- WPF Delegate委托整理
那啥,是从这里整理出来的,感谢Rising_Sun,整理的过于简单,看不明白的戳这里 using System; using System.Collections.Generic; using Sys ...
- PHP+Mysql————表单数据插入数据库及数据提取
站点在进行新用户注冊时,都会将用户的注冊信息存入数据库中,须要的时候再进行提取.今天写了一个简单的实例. 主要完毕下面几点功能: (1)用户进行注冊,实现password反复确认,验证码校对功能. ( ...
- 建立Hibernate二级Cache
建立Hibernate二级Cache它需要两个步骤:首先,一定要使用什么样的数据并发策略,然后配置缓存过期时间,并设置Cache提供器. 有4种内置的Hibernate数据并发冲突策略,代表数据库隔离 ...
- petshop4.0 其中详细解释(系统架构)
前言:PetShop它是一个例子.微软用它来展示.Net容量企业系统开发.业界有很多.Net与J2EE争议.微软许多数据PetShop和Sun的PetStore从.这样的争论是不可避免的带有强烈的商业 ...
- 求pi 的公式
pi = 3.1415926..... 下面用c 语言来求解PI 现有公式 (pi*pi)/6 = 1 + 1/(2*2) + 1/(3*3) + ... + 1/(n*n); #include &l ...
- 【UVA272】TEX Quotes
A - TEX Quotes Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submitcid=80 ...
- JAVA字符串格式化-String.format()使用
传统型格类型 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象. 熟悉C语言的同学应该记得C语言的sprintf()方法.两者有类似之处.format()方法有两种重载 ...
- 返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 Web API
原文:返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 Web API [索引页][源码下载] 返璞归真 asp.net mvc (10) - asp.net ...
- redmine 出口中国的乱码
pdf 这是redmine的bug.必须在个人账户更改将设立中国语文,足够的人才来解决. 顺便说一下,提示.以下更改文件的方法是无效的 /home/redmine/redmine-2.5.1/lib/ ...
- UVA 11769 All Souls Night 的三维凸包要求的表面面积
主题链接:option=com_onlinejudge&Itemid=8&page=show_problem&problem=2869">点击打开链接 求给定的 ...