1. 程式人生 > >部署django : Apache + mod_wsgi + windows

部署django : Apache + mod_wsgi + windows

1、環境 3、安裝mod_wsgi 注意,因為apache是32位的,所以mod_wsgi也應該選擇32位的。mod_wsgi的官網在這裡(https://code.google.com/p/modwsgi/)。但是因為沒有windows編譯版本(自己編譯幾乎都是以失敗告終),所幸在這裡可以下載到編譯版本(http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi),我們選擇mod_wsgi-3.4.ap24.win32-py3.3.zip進行下載。 下載過mod_wsgi之後,解壓之後的檔案為“mod_wsgi.so”檔案。我們拷貝它到apache安裝目錄下面的modules資料夾。 光拷貝mod_wsgi.so檔案是不行的,我們還需要修改apache的配置檔案,讓apache知道mod_wsgi的存在。apache的配置檔案在apache安裝目錄下的conf資料夾中的httpd.conf檔案。使用記事本或者任何你喜歡的文字編輯器開啟它,在檔案的最後新增下面的內容並儲存就可以了: LoadModule wsgi_module modules/mod_wsgi/mod_wsgi.so 3、配置django project
django project的目錄結構如下: 第二步 修改wsgi.py檔案 原以為wsgi.py不需要修改的,可是發現如果不將目錄所在的資料夾新增到系統路徑中,apache還是會報錯,因此在wsgi.py新增下面2行 import sys
sys.path.append('E:/git/python_dev/python_study_case/django/mydjangosite')  其中append的引數就是你的project下的目錄

第三步 配置apache/conf/httpd.conf檔案 開啟httpd.conf檔案,在後面新增下面內容 #新增對映,其中WSGIScriptAlias /是對映到根目錄,如果你需要對映到其他地址,可以改為WSGIScriptAlias /myproject (假設myproject是你想要的地址,那麼你可以通過訪問localhost/myproject來訪問你的網站) WSGIScriptAlias / E:/git/python_dev/python_study_case/django/mydjangosite/mydjangosite/wsgi.py
#指明應用路徑,如果你是使用virtualenv,那麼還需要新增virtualenv的site-packages路徑,中間用";"分隔(linux用冒號:,windows用分號;) WSGIPythonPath E:/git/python_dev/python_study_case/django/mydjangosite;E:/git/python_dev/envs/django/Lib/site-packages #新增wsgi的讀取許可權 <Directory E:/git/python_dev/python_study_case/django/mydjangosite/mydjangosite>
     <Files wsgi.py>
          Order deny,allow
          Require all granted (apache2.3以下版本請註釋掉這行)
     </Files>
</Directory> #這裡宣告靜態文靜的對映,這個/static是給django admin的靜態檔案使用的
Alias /static "C:/Python33/Lib/site-packages/django/contrib/admin/static" #這裡是新增資料夾的讀取許可權,注意apache2.3以上的讀寫設定與2.3以下版本有所不同
<Directory "C:/Python33/Lib/site-packages/django/contrib/admin/static/"> 
    <IfVersion < 2.3 >
        Order allow,deny
        Allow from all
    </IfVersion>
    <IfVersion >= 2.3>
        Require all granted
    </IfVersion> 
</Directory> 4、啟動apache
開啟cmd,定位到apache安裝目錄下面的bin目錄,輸入httpd就可以啟動伺服器了,此時你就可以在你的瀏覽器中訪問localhost了 5、引用連結 首先感謝那些為提供這些優秀開源工程的程式設計師們;其次在學習如何部署的過程中,下面幾篇文章對我的幫助很大,在這裡再次說聲謝謝! http://www.cnblogs.com/liulixiang/p/3543021.html