Centos7系统部署django项目

一. 首先在Centos7系统下安装Apache服务器
安装方法参考
https://blog.csdn.net/super_master_sean/article/details/82907227

二. Python 配置
1 安装 python3.6.5 源及依赖包,一次执行下面命令

	yum install epel-release -y
	
	yum groupinstall "Development tools" -y
	
	yum install zlib-devel bzip2-devel openssl-devel ncurses-devel zx-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel -y

2编译安装 python3.6.5 以及 pip package manager

cd Python-3.6.5

./configure --prefix=/usr/local --with-ensurepip=install --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"

 make && make altinstall

3安装 virtualenv

pip3.6 install virtualenv

三 django安装配置
1.配置 Django virtualenv

mkdir -p /var/www/html/django

cd /var/www/html/django

virtualenv -p /usr/local/bin/python3.6  venv

2.开启 virtualenv python3 环境

source  venv/bin/activate

3.在此环境(虚拟环境)安装 Django 相关模块

pip install django pymysql

4安装 mod_wsgi for python3,这个安装要在虚拟环境下安装

pip install mod_wsgi 

5导出 apache 所需的 mod_wsgi 模块

mod_wsgi-express install-module
出现这样的结果:LoadModule wsgi_module "/usr/lib64/httpd/modules/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so"
WSGIPythonHome "/var/www/html/.py3env"

6.配置 apache 配置文件

vi /etc/httpd/conf/httpd.conf
末行添加:  LoadModule wsgi_module "/usr/lib64/httpd/modules/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so"
创建django.conf配置文件

创建django.conf配置文件

vi /etc/httpd/conf.d/django.conf

把下面内容拷贝到配置文件中

Alias /static /var/www/html/django/django2/static
<Directory /var/www/html/django/django2/static>
Require all granted
</Directory>

<Directory /var/www/html/django//django2/django2>
 <Files wsgi.py>
   Require all granted
 </Files>
</Directory>

WSGIPythonHome "/var/www/html/django/venv"

Listen 8080
<VirtualHost *:8080>

ServerName django.example.com

WSGIDaemonProcess /django2  python-path=/var/www/html/django/venv/lib/python3.6/site-pachages
WSGIScriptAlias / /var/www/html/django/django2/django2/wsgi.py

</VirtualHost>

此处的django2为工程的一级目录,如图:
在这里插入图片描述

四 django项目上传
1.保证 virtualenv python3 环境开启

source /var/www/html/django/venv/bin/activate

2.上传django2项目到django文件夹中并解压,进入django2中 生成项目静态文件目录:

python manage.py  collectstatic

3修改django2项目中的wsgi.py文件

vi     django2/wsgi.py

修改结果如下:

import os
import sys
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
sys.path.append('/var/www/html/django/django2')

from django.core.wsgi import get_wsgi_application

application = get_wsgi_application()

4.添加ALLOWED_HOSTS

vi myproject/settings.py

ALLOWED_HOSTS = ['django.example.com']

5.修改项目属主和权限

chmod -R 755 /var/www/html

chown -R apache:apache /var/www/html

猜你喜欢

转载自blog.csdn.net/super_master_sean/article/details/83001843