服務器:Apache2.4
服務器系統:win-server
本地系統:win10
項目:web
框架:django 2.1.4
Python:3.7
1、在服務器上安裝Apache
下載apache;http://httpd.apache.org/
下載windows系統適配的apache版本,注意是基於x86還是x64的版本
解壓后將下面這3個文件放在C盤根目錄;若希望更換apache目錄位置,需要進入httpd.conf修改配置文件路徑,參考地址https://blog.csdn.net/sunqian666888/article/details/78561399
在bin目錄下運行cmd,輸入指令start httpd或者雙擊httpd.exe即可啟動服務器
若需開機自動啟動,cmd輸入
httpd.exe -k install
若需取消開機自啟動,cmd輸入
httpd.exe -k uninstall
啟動服務器后,關閉httpd命令符即關閉服務器
啟動服務器后,可通過公網IP訪問該服務,展示的頁面默認為‘It Works!’頁面存放地址為Apache24\htdocs\
解壓后有一個readme.txt文件,里面指出該版本需要安裝Visual C++ Redistributable for Visual Studio 2017才可正常運行,所以服務器需要在安裝上述插件
2、在服務器上配置語言環境
在服務器系統上安裝python、django,版本最好和項目版本一致,直接把安裝包復制進服務器系統安裝即可
配置環境變量:
①配置python路徑:C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32
②配置django的安裝路徑:C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\Lib\site-packages
③安裝mod_wsgi文件,下載地址https://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
注意:需要對應apache和python的版本進行下載,32位對應32位apache,64位對應64位apache
下載后將文件復制到python安裝目錄下的script目錄下,在此目錄下運行cmd,輸入指令pip3 install xxxx.whl 進行安裝
安裝完畢后輸入
mod_wsgi-express module-config
查看wsgi文件
會輸出3行信息:
LoadFile "c:/users/administrator/appdata/local/programs/python/python37-32/python37.dll" LoadModulewsgi_module "c:/users/administrator/appdata/local/programs/python/python37-32/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win32.pyd" WSGIPythonHome "c:/users/administrator/appdata/local/programs/python/python37-32"
將mod_wsgi文件安裝位置加入環境變量,即把python下的script文件夾配置到系統路徑里
至此,環境配置完畢
3、導入web項目
在win-server服務器上自定義一個區域存放web項目,復制即可
4、配置Apache
Apache配置文件存放於Apache24\conf\httpd.conf中,可以用txt或其他編譯器打開(Notepad++)
在文件最下方新增:
① #添加mod_wsgi.so 模塊 LoadFile "c:/users/administrator/appdata/local/programs/python/python37-32/python37.dll" LoadModule wsgi_module "c:/users/administrator/appdata/local/programs/python/python37-32/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win32.pyd" WSGIPythonHome "c:/users/administrator/appdata/local/programs/python/python37-32"
② #指定website的wsgi.py配置文件路徑 #這里填寫wsgi.py文件所在的路徑 WSGIScriptAlias / "C:\my_project\project_1\Web\Web\wsgi.py" 以上為配置需要部署的項目中wsgi.py的位置
③ #指定項目路徑 WSGIPythonPath "C:\my_project\project_1\Web" #這里填寫自己的項目路徑 <Directory C:\my_project\project_1\Web> <Files wsgi.py> Require all granted </Files> </Directory>
④
#指定靜態資源路徑
待研究
5、Django配置
①
setting.py文件的配置
# SECURITY WARNING: don't run with debug turned on in production! DEBUG = False ALLOWED_HOSTS = ['*']
代表所有ip都可進行訪問