Apache部署Django
来源:互联网 发布:淘宝视频自动播放关闭 编辑:程序博客网 时间:2024/06/06 10:02
·环境
·O S: Ubuntu17.04
·Apache: Apache 2.4
·Python: Python 3.5.3
·Django: Django 1.11
·数据库: Mysql-5.7
·步骤
·第一步: 安装Apache
$ sudo apt-get install apache2 --#安装Apache
·第二步: 安装Python3.5.3
$ sudo apt-get install python3.5 --#安装Python
·第三步: 安装pip
$ sudo apt-get install python3-pip --#安装pip
·第四步: 设置 python 和 pip 的默认版本
$ rm -rf /usr/bin/python --删除python2.7的软链接
$ ln -s /usr/bin/python3.5 /usr/bin/python --创建python3.5的软链接
$ ln -s /usr/bin/pip3 /usr/bin/pip --创建pip3的软链接
·第五步: 安装数据库
$ sudo apt-get install mysql-server --安装 数据库 服务端
$ sudo apt-get isntall mysql-client --安装 数据库 客户端
$ sudo apt-get install libmysqlclient-dev --安装 数据库 客户端库
·第六步: 安装Django
$ sudo pip install Django==1.11 --安装 Django
$ sudo pip install Pillow --安装 django 的图片模块
$ sudo pip install pymysql --安装 python 的mysql模块
$ sudo pip install mysqlclient --安装 django 的mysql客户端模块
$ sudo apt-get install libapache2-mod-wsgi-py3 --安装 Python3 连接 apache 的模块
·第七步: 开始部署 Django
1. 将Django工程放在/var/www/下
2. $ sudo vim/etc/apache2/sites-available/项目名称.conf 修改配置文件;--参考附件1
3. $ sudo a2ensite 项目名称.conf 配置文件生效
4. $ sudo vim /var/www/项目名称/项目名称/wsgi.py --参考附件2
5. $ sudo vim /var/www/项目名称/项目名称/settings.py
--修改 “ ALLOWED_HOSTS = [] ” 为 “ ALLOWED_HOSTS = [“*”] ”
--在最后添加一行 “ MEDIA_ROOT = '/var/www/项目名称' ”
·第八步: 修改 Mysql 编码
1. $ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
-- 在 lc-messages-dir= /usr/share/mysql 语句后添加 character-set-server=utf8 语句
2. $ sudo vim /etc/mysql/conf.d/mysql.cnf
--添加 default-character-set=utf8 语句
·第九步: 修改 项目 文件权限
1. $ sudo chown -R www-data:www-data /var/www/项目文件--"www-data"为 apache 的用户组
2. $ sudo chmod -R g+w /var/www/项目文件
3. $ sudo vim /usr/local/apache/bin/envvars
--修改 "export LANG=" 为 export LANG="en_US.UTF-8" --设置 apache 的中文编码
--最后一行添加 umask 0002--设置 apache 上传文件时候的默认权限
·第十步: 修改 连接 数据库
1. $ sudo vim /var/www/项目名称/项目名称/settings.py --修改 "DATABASES{}" 如下
--DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '数据库的 库名称(一般与项目名称一致)',
'USER': '登陆数据库的 用户名称',
'PASSWORD': '登陆数据库的 密码',
'HOST': '数据库的IP',
}
}
2. $ mysql -u 数据库的 用户名称 -h 数据库的IP -p 登陆数据库的密码
3. mysql> create database 数据库的 库名称 --登陆成功后 创建 数据库
4. $ cd /var/www/项目名称 --进入项目文件夹
5. $ python manage.py makemigrations
6. $ python manage.py migrate --5 和 6 是 同步 “models.py” 的数据表
7. 完成部署
·附件1:项目名称.conf
<VirtualHost *:80>ServerName www.yourdomain.com #ServerAlias otherdomain.com#ServerAdmin youremail@gmail.com # 存放用户上传图片等文件的位置,注意去掉#号#Alias /media/ /var/www/项目名称/media/ # 静态文件(js/css/images)的存放位置Alias /static/ /var/www/项目名称/APP名称/static/ # 允许通过网络获取static的内容<Directory /var/www/项目名称/static/> Require all granted</Directory># 最重要的!通过wsgi.py让Apache识别这是一个Django工程,别漏掉前边的 /WSGIScriptAlias / /var/www/项目名称/项目名称/wsgi.py # wsgi.py文件的父级目录,第一个ProjectName为Django工程目录,第二个ProjectName为Django自建的与工程同名的目录<Directory /var/www/项目名称/项目名称/> <Files wsgi.py> Require all granted</Files></Directory></VirtualHost>
import osfrom os.path import join,dirname,abspathPROJECT_DIR = dirname(dirname(abspath(__file__)))import syssys.path.insert(0,PROJECT_DIR)os.environ.setdefault("DJANGO_SETTINGS_MODULE", "项目名称.settings")from django.core.wsgi import get_wsgi_applicationapplication = get_wsgi_application()
- Apache 部署 django
- apache + django部署
- django部署到apache
- apache部署django
- Apache上部署Django
- Apache部署Django环境
- Apache部署Django项目
- Apache上部署Django
- Apache上部署Django
- Apache部署django项目
- Apache部署Django环境
- django之Apache部署
- Ubuntu Apache 部署 Django
- 部署django+apache wsgi
- Apache部署django项目
- Django部署到Apache
- Apache部署django项目
- django的apache部署
- JAVA Random()函数(转)
- 机器学习笔记五
- 设计模式读书笔记-----命令模式
- 设计模式之代理模式
- BZOJ 1854 游戏 (并查集)
- Apache部署Django
- leetcode之数值计算类-----9. Palindrome Number(判断一个数是否为回文数)
- 关于RC阻容复位电路的问题
- ES(五)迭代器和for-of循环
- Python-各种排序
- label标签的for属性
- ssh整合所需jar包
- VUE2.0 element upload使用
- 回顾大一·C语言编程4.3(4)