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进行关闭

posted @ 2017-04-18 17:11  苏陌宁  阅读(3064)  评论(0编辑  收藏  举报