Django服务器平台搭建
2018-06-18 01:53:42来源:未知 阅读 ()
- 买云服务器,选择Ubuntu系统
- 设置ssh登陆, windows平台通过Putty登陆Ubuntu云服务器. [ https://blog.csdn.net/gsls200808/article/details/49778959 ]
- 软件安装
- 系统软件升级和 数据库软件,服务区软件安装: Sudo apt-get update ,sudo apt-get upgrade ,sudo apt-get install mysql-server-5.7 , nignx ,python3-pip
- Python包安装,: pip3 install Django==1.10.5 gunicorn Django-crontab 等等 Django项目需要的python包文件
- Git 设置. Git用于将编写的源代码同步到服务器,这里也可以采用其他方式。只需要把编写的Django源代码传到服务器下即可。
- 安装 nginx , gunicorn 。Nginx 用作代理服务器 ; gunicorn 用作wsgi 服务器
- 配置nginx。 Nginx默认的安装目录在 /etc/nginx/.
nginx配置文件的路径: `/etc/nginx/sites-available/` : 先把配置文件放在这里,编辑好之后,链接到目录 `/etc/nginx/sites-enable/`
ngixn 配置文件内容:
server{
listen 80;
server_name 127.0.0.1; #访问django项目的网站
access_log /var/www/Django_project /log/nginx.access.log;#访问日志
error_log /var/www/ Django_project /log/nginx.error.log;#错误日志
location /static/ {
root /var/www/ Django_project /;
expires 30d;
}
location /media/ {
alias /var/www/ Django_project /uploads/; #Django 项目接受上传文件的目录
expires 30d;
}
location / {
#动态请求交给gunicorn,8087端口就是gunicorn用的端口
proxy_pass http://127.0.0.1:8087;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
- 启动django 工程的服务,在Django_project 工程目录下执行: gunicorn -t 120 -w 2 -b 127.0.0.1:8087 Django_project.wsgi 。 Django的setting.py中要将服务器IP地址添加到ALLOWED_HOSTS。
- 如果没有问题的,现在可以在客户端浏览器中输入服务器IP地址就能看到完整的页面了
附: Mysql数据库相关命令
根据setting.py文件的配置,创建数据库和相应的用户,需要的使用的命令如下:
登陆mysql数据库客户端 mysql -u root -h localhost -p,安装mysql时,根据提示设置root账户的密码,这里使用root账号登录
创建数据库 utf-8 字符编码
CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
查看,修改数据库编码
use database_name;
show variables like 'character_set_database';
alter database <数据库名> character set utf8;
删除数据库
Drop database db_name;
创建MYSQL 用户
CREATE USER 'user_name'@'localhost' IDENTIFIED BY 'password';
授权
GRANT privileges ON databasename.tablename TO 'username'@'host';
其中的privileges包括 select , delete , update 等权限,Django操作数据库需要全部的权限,可参考如下命令
GRANT ALL ON `discuz`.* TO 'discuz'@'localhost';
查看用户权限:
show grants for username@'localhost';
gunicorn 配置
gunicorn 可简单配置为
gunicorn –b 0.0.0.0:8999 dj.wsgi
执行命令之后,可以在浏览器访问页面,访问地址: 服务器IP(x.x.x.x):8999,但是看不到静态文件(图片,CSS,JS等)。静态文件的路径需要在nginx中配置。
参考连接 http://blog.51cto.com/10452483/1769749
nginx配置
Django文件的路径 最好是放在 /var/www/ 目录下,否则访问静态文件可能因为权限问题出现 403 forbidden error 错误,可以使用root账号来减小出现这种错误的可能。参考链接 http://blog.51yip.com/apachenginx/1512.html
nginx配置文件的路径:
/etc/nginx/sites-available/ : 先把配置文件放在这里,编辑好之后,链接到目录 /etc/nginx/sites-enable/
简单的配置文件如下:
server
{
listen 80;
location /static/ {
alias /var/www/static/; # 静态文件目录
}
location / {
proxy_pass http://127.0.0.1:8999;
}
}
不出意外应该是可以在浏览器端(访问地址: x.x.x.x)看到完整的页面了。另外要特别注意服务器开放的端口号有哪些。比如阿里云默认开放的端口号为 3389,需要自行设置一下,开放相应端口号,以免出现无法访问的问题。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Django项目中使用qq第三方登录。 2019-08-13
- Django和前端用ajax传输json等数据 2019-08-13
- Django基本知识 2019-08-13
- JavaScript获取Django模板中指定键值的数据,使用过滤器 2019-08-13
- django框架使用及创建项目 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash