3_主流部署方式介绍-Django+mod_wsgi+Apache
安装apache
yum install httpd httpd-devel -y
开机自动重启配置
chkconfig httpd on
重新编译安装python
删除编译记录及文件
修改apache的配置文件指明python的安装位置
[root@abc123 桌面]# vi /etc/ld.so.conf
修改前
修改后
include ld.so.conf.d/*.conf /usr/local/lib ~ ~
python编译完成后执行入下命令
[root@abc123 桌面]# /sbin/ldconfig -v
[root@abc123 blog_project]# vi /etc/selinux/config
修改前
SELINUX=enforcing
修改后
SELINUX=disabled
启动立即生效
[root@abc123 blog_project]# setenforce=0
chown -R apache:apache blog_project
执行如下命令直至根目录,最后一个参数是文件名
chmod -R 755 blog_project
错误日志查看
[root@abc123 httpd]# vi /var/log/httpd/error_log
错误日志提示
[Sat Mar 03 08:32:10 2018] [error] [client ::1] ValueError: Unable to configure handler 'default': [Errno 2] No such file or directory: '/log/all.log'
在django中修改错误日志的地址
[root@abc123 blog_project]# vi settings.py
}, 'default': { 'level':'DEBUG', 'class':'logging.handlers.RotatingFileHandler', 'filename': BASE_DIR +'/log/all.log', #日志输出文件 'maxBytes': 1024*1024*5, #文件大小 'backupCount': 5, #备份份数 'formatter':'standard', #使用哪种formatters日志格式 }, 'error': { 'level':'ERROR', 'class':'logging.handlers.RotatingFileHandler', 'filename': BASE_DIR +'/log/error.log', 'maxBytes':1024*1024*5, 'backupCount': 5, 'formatter':'standard', }, 'request_handler': { 'level':'DEBUG', 'class':'logging.handlers.RotatingFileHandler', 'filename':BASE_DIR + '/log/script.log', 'maxBytes': 1024*1024*5, 'backupCount': 5, 'formatter':'standard', }, 'scprits_handler': { 'level':'DEBUG', 'class':'logging.handlers.RotatingFileHandler', 'filename':BASE_DIR +'/log/script.log', 'maxBytes': 1024*1024*5, 'backupCount': 5, 'formatter':'standard', } },
一共要修改4 处文件路径
启动数据库
[root@abc123 httpd]# service mysqld start
配置mysql开机自动启动
[root@abc123 blog_project]# chkconfig mysqld on
配置后台管理系统的静态模板
配置静态模板收集回来后的存储位置,配置settings.py
[root@abc123 blog_project]# vi settings.py
进入后配置代码
MEDIA_URL = '/uploads/' STATIC_ROOT = os.path.join(BASE_DIR, 'collect') MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads')
中间一行为要配置的代码
静态模板收集回来之后会在项目的路径下生成一个collect的文件夹
将collect文件夹中的admin移入到静态模板中
操作如下,
收集静态文件
[root@abc123 blog_project]# python manage.py collectstatic
移动静态文件
[root@abc123 collect]# mv admin ../static/
更改项目权限
[root@abc123 fhj]# chown -R apache:apache blog_project
重启apache
[root@abc123 fhj]# service httpd restart
打开浏览器admin正常启动