環境佈署(windows)

win10+XAMPP+Django+mod_wsgi

xampp或apache的安裝就不記錄了就選版本選位元,再改一下servername listen之類的

.

個人認為使用xampp或直接操作apache的差異不大,頂多目錄長不一樣,只是用xampp比較不好除錯

直接以CMD操作apache的好處在於可以直接看到錯誤源自於httpd.conf中的哪一行,剛開始先install,並直接用httpd.exe -t來測試,但要記得uninstall後再開啟xampp中的apache避免衝突

.

這次任務成敗關鍵在於mod_wsgi模組合不合環境,不管直接使用apache或者xampp都會遇到這問題,檔案格式方面許多教程都是寫將mod_wsgi.so丟到apache的modules中,但現在的django版本不用這樣加惹

參照連結中的方法,

  1. 先載版本與環境符合的.whl檔(http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi\

  2. 以pip install進行安裝(如果版本與環境不正確會不給裝!?)

  3. 完成之後再到anaconda或者python(安裝路徑資料夾)下的scripts資料夾中找到mod_wsgi-express.exe這個檔案

  4. 之後再以CMD執行以下指令

c:/xx/xx/xx/mod_wsgi-express.exe module-config

完成後就可以在CMD中看到關於wsgi模組的相關資訊

也會看到原來要load到apache中的檔案是.pyd而不是.so,把資訊加到httpd.conf後再用httpd.exe -t來測試,如果沒報錯就成功惹(灑花,其餘專案設置因人而異

.

這次成功的環境配置:

  1. win10 64-bit

  2. Anaconda (python 3.6) 32-bit:可在cmd用python -V或只打python查詢版本

  3. Apache(2.4) 32-bit:可在cmd用httpd.exe -v查詢版本(v大小寫有差呦這是小寫)

  4. Django (1.11.2):當時直接用pip install安裝的我也不知道從哪一版開始不用.so檔

  5. whl檔: mod_wsgi-4.5.15+ap24vc14-cp36-cp36m-win32.whl

  6. vc可再另外google,不一定真的要有vs c++

嘗試過python 64bit+apache 64bit但失敗惹,但都改成32bit就ok惹,但不知道實際使用上python的位元差異大小

.

參考資料:

https://dotblogs.com.tw/defaultzlq/2017/04/08/151149

(↑推這篇↑)

win10+XAMPP+Django+mod_wsgi Round2

為了要配合python(64位元)只好再記錄一次

  1. 首先python的變動會直接導致wsgi無法使用,apache會開不起來,所以要做個新的(如上面pip install的方法),這次採用的whl檔:mod_wsgi-4.5.15+ap24vc14-cp36-cp36m-win_amd64.whl,新的的模組mod_wsgi.cp36-win_amd64.pyd

  2. 接下來是將apache換成64位元,我是先直接道官網載64版,將解壓縮後的apache資料夾直接丟進xampp資料夾中取代,當然以防萬一可以將原始的apache資料夾改名放旁邊,替換完成後可以用cmd中httpd.exe -t的方式測試apache錯誤,之後httpd.conf檔中應該會出現一些include的錯誤,因為原始xampp的apache設定檔是有修改過的會跟原始從官網下載的不一樣,這時可以選擇自己一行一行加,或者將舊的httpd.conf檔案取代過來(這邊細節忘了..)

  3. 最後apache會出現一個php xxxxwin32的錯誤,我自認為應該是php32位元問題,所以就採用類似apache的改法,直接載個php64位元替換進去,這時apache應該就可以正常運作惹,但可能會

  4. 替換php中的php.ini,再檢查mysql中的my.ini

參考:

http://blog.xuite.net/linriva/blog/44815005-%5BPHP%5D+Apache%EF%BC%8CWindows+x64+PHP+Server+%E5%AE%89%E8%A3%9D%E6%8C%87%E5%8D%97+~+%E8%BD%89%E8%B2%BC

http://javier3399.blogspot.tw/2013/09/windows-7-apache-mysql-php.html

http://shaurong.blogspot.tw/2013/10/apache-php-mysql-on-win7.html

Last updated