Django部署到Apache

来源:互联网 发布:温柔强大动漫男主 知乎 编辑:程序博客网 时间:2024/06/05 05:30

Apache版本;2.2

python:2.7

Django:1.3.


1.我的Django项目Address_Por在:F:\Django-1.3.7\django\bin 下


2.首先要安装wsgi模块,具体百度(比较简单,下载好直接加入Apache的models文件夹就行,,注意命名我的是命名为mod_wsgi.so)

3.打开Apache的配置文件httpd.conf直接在末尾复制添加如下信息

#---------------------------------Django项目---------------------------------WSGIPythonHome "D:/python2.7.11"#添加mod_wsgi.so 模块LoadModule wsgi_module modules/mod_wsgi.so#------------------------------------------------------------Address_Pro项目配置-------WSGIPythonPath "F:/Django-1.3.7/django/bin/Address_Pro"#指定Django_Pro项目的wsgi.py配置文件路径WSGIScriptAlias / F:/Django-1.3.7/django/bin/Address_Pro/wsgi.py#指定项目路径WSGIPythonPath F:/Django-1.3.7/django/bin<Directory F:/Django-1.3.7/django/bin/Address_Pro><Files wsgi.py>  Options FollowSymLinks    AllowOverride None   Order allow,deny  Allow from all</Files></Directory>

4.上面其中有一个wsgi.py文件,,即在Address_Pro项目下新建wsgi.py,,添加如下代码
import osimport sysdjangopath="D:/python2.7.11/Lib/site-packages/django/bin"if djangopath not in sys.path:sys.path.append(djangopath)projectpatch="F:/Django-1.3.7/django/bin/Address_Pro"if projectpatch not in sys.path:sys.path.append(projectpatch)apppath='F:/Django-1.3.7/django/bin/Address_Pro/Users'#Users是我的项目应用名,,你的要改成你创建的应用名字if apppath not in sys.path:  sys.path.append(apppath)os.environ['DJANGO_SETTINGS_MODULE']='Address_Pro.settings'import django.core.handlers.wsgiapplication = django.core.handlers.wsgi.WSGIHandler()


5.在Address_Pro项目的setting.py文件中修改如下信息

ALLOWED_HOSTS = ['127.0.0.1','localhost']

以下情况根据你的情况加不要复制或者硬加,主要是参考
如果你的项目中有数据库和模板即在配置文件中都要使用绝对路径

DATABASES = {    'default': {        'ENGINE': 'sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.        'NAME': r'F:\Django-1.3.7\django\bin\Address_Pro\addresspro.db3',    #数据库名称指定绝对路径        'USER': '',                      # Not used with sqlite3.        'PASSWORD': '',                  # Not used with sqlite3.        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.    }}

TEMPLATE_DIRS = (    r'F:\Django-1.3.7\django\bin\Address_Pro\template', #模板路径)

最后给上我的django项目Address_Pro的总体文件目录


最后启动Apache服务器,在浏览器中输入http://localhost:8000/contact/   (因为我的项目的url.py是如下的,,所以后面加有contact)

urlpatterns = patterns('',(r'^contact/$','Users.contact.index'), )
一般的空Django项目直接输入http://localhost:8000/即可查看



0 0
原创粉丝点击