一、環境準備:
1.主要軟件版本:
--Windows Server 2012 x64
--[Apache Lounge Distribution? Apache 2.4.23 win64 VC10](http://www.apachelounge.com)
--Python 3.4.2? MSC1600 該版本是用VC10編譯的
--mod_wsgi-py34-VC10.so
--Django(1.10.6)及其他的第三方庫
注意:上述軟件版本必須都是64位,且用VC10(visual sudio? 2010)編譯。
2.軟件安裝
--安裝Python,Django和第三方庫,配置好環境變量,即把相關路徑在環境變量中設置PYTHONPATH。
--安裝Apache并配置,httpd.conf文件
ServerName localhost:88
ServerRoot "c:/Apache24"? #我的安裝位置
Listen 88? #避免與其他已使用端口相同
-- 通過‘C:\Apache24\bin\httpd.exe’啟動服務,打開網站,顯示“It works!”,則表示Apache基本配置完成。
--下載mod_wsgi.so文件(比較難找,一定要兼容的版本,如果安裝更高級的Python版本,則要自行編譯)拷貝到Apache/modules文件夾下,并在httpd.conf文件中加載:
LoadModule wsgi_module modules/mod_wsgi.so #注意mod_wsgi應與實際文件名一致
二、Django部署
1.部署準備
--在settings.py中關閉DEBUG
DEBUG=False
TEMPLATE_DEBUG=False
ALLOWED_HOSTS= ['xx.xx.xx.xx'] ? #配置主機ip
--在settings.py中配置生產端數據庫
?DATABASES= {'default':
{'ENGINE':'django.db.backends.mysql',
'NAME':'xxx',#數據庫名稱'
USER':'xxx',#用戶名
'PASSWORD':'xxx', ?#密碼
'HOST':'127.0.0.1', ?#數據庫主機ip,如為本機,則填'127.0.0.1
''PORT':'3306',} ?#服務器端口
}
--wsgi文件,新版本wsgi文件在新建Django工程時自動建立,基本不用動
import os,sys
?from django.core.wsgi import get_wsgi_application?sys.path.append('C:/Apache24/htdocs/mysite') ?#如提示無法導入wsgi,可增加此路徑?os.environ.setdefault("DJANGO_SETTINGS_MODULE","mysite.settings")?application=get_wsgi_application()
在settings.py中修改template文件夾地址
TEMPLATES= [
{'BACKEND':'django.template.backends.django.DjangoTemplates',
'DIRS': ["C:/Apache24/htdocs/mysite/myTemplate",], ? ?#設置生產端的TEMPLATES地址#以下省略...
},]
2.將已開發完成的Django項目文件夾拷貝到“C:\Apache24\htdocs”中,并在httpd.conf文件中完成配置
WSGIScriptAlias / C:/Apache24/htdocs/mysite/mysite/wsgi.py? #指定wsgi路徑WSGIPythonPath C:/Apache24/htdocs/mysite? ? ? ? ? #指定Django項目路徑
<Directory C:/Apache24/htdocs/mysite/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
Alias /static/ C:/Apache24/htdocs/mysite/static/? #靜態文件路徑配置
<Directory C:/Apache24/htdocs/mysite/static>
AllowOverride None
Options None
Require all granted
</Directory>
3.到這里就配置完成了,啟動服務,打開網站,就會顯示你之前開發的Django網站。
如果出現異常,可以到‘C:\Apache24\logs\error.log’查看錯誤原因并逐一排查。