CentOS7下 将django工程部署到Apache2.4上

Posted 苏陌宁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7下 将django工程部署到Apache2.4上相关的知识,希望对你有一定的参考价值。

  因为需要写一个网站,考虑到也没写过其他的语言,就直接采用了python,说起python的框架,就是大名鼎鼎的Django啦。

  工程所采用的版本是python 2.7,django 是1.8,windows开发机上的python是2.7.12,服务器上的是2.7.5,版本只要差别不太大就可以了。

  服务器的apache的版本是Apache/2.4.6,数据库采用的是mariadb5.5.52

  工程写完之后,文档格式如下

                  

  在网上查看了好多资料,写的都不是很全,写此文章,帮助大家。

  首先,我把文件放在了Apache的默认目录下,名字叫buglist。 

1 /var/www/html

  对文件进行修改

1 vim /var/www/html/buglist/buglist/wsgi.py
 1 import os
 2 
 3 from os.path import join,dirname,abspath
 4 
 5 PROJECT_DIR = dirname(dirname(abspath(__file__)))
 6 import sys
 7 sys.path.insert(0,PROJECT_DIR) 
 8 
 9 
10 from django.core.wsgi import get_wsgi_application
11 
12 os.environ.setdefault("DJANGO_SETTINGS_MODULE","buglist.settings")
13 
14 
15 application = get_wsgi_application()
1 vim /var/www/html/buglist/buglist/settings.py
1 ALLOWED_HOSTS = [www.example.com\',]   ----添加自己的域名
 1 STATICFILES_FINDERS = (
 2               \'django.contrib.staticfiles.finders.FileSystemFinder\',
 3               \'django.contrib.staticfiles.finders.AppDirectoriesFinder\',
 4               #\'django.contrib.staticfiles.finders.DefaultStorageFinder\',
 5 )
 6 STATICFILES_DIRS = (\'/var/www/html/buglist/static/css\',            -----此处将之前的相对路径改成绝对路径
 7               \'/var/www/html/buglist/static/bootstrap\',
 8                \'/var/www/html/buglist/static/images\',
 9                \'/var/www/html/buglist/static/js\',
10 )

  执行命令

1 python manage.py  collectstatic   ---对静态文件进行处理

  此时,静态文件都会copy到static下面,下面就要去修改我们的Apache服务器的配置文件了

  需要安装mod_wsgi 命令如下

1 yum install mod_wsgi
1 vim /etc/httpd/conf/httpd.conf
 1 LoadModule  wsgi_module modules/mod_wsgi.so    ---添加
 2 <VirtualHost *:80>
 3           DocumentRoot "/var/www/html/buglist"
 4           WSGIScriptAlias / "/var/www/html/buglist/buglist/wsgi.py"
 5           Alias /static/ /var/www/html/buglist/static/    ---不能加引号
 6           <Directory /var/www/html/buglist/static>
 7                  Require all granted
 8           </Directory>
 9           <Directory "/var/www/html/buglist">
10                AllowOverride All
11                Require all granted
12           </Directory>
13 </VirtualHost>

 

重启服务器,就可以看到大功告成

  如果服务器调试没有问题了,记得把setting里面的debug进行关闭

以上是关于CentOS7下 将django工程部署到Apache2.4上的主要内容,如果未能解决你的问题,请参考以下文章

centos7 下通过nginx+uwsgi部署django应用

centos7 下通过nginx+uwsgi部署django应用

centos7下部署Django(nginx+uWSGI+Python3+Django)

centos7下部署Django(nginx+uwsgi+django+python3)

centos7下采用Nginx+uwsgi来部署django

CentOS7下部署Python3+Django+uwsgi+Nginx