Apache部署django項目

我想這應該是很廣泛的一篇文章,百度了一下確實有很多相關的文章,竟然還在講用「mod_python」 , 我也是醉了。在些過程當中頗費了些力氣。在此記錄。python

----------------------------------------------web

 

  在此以前,咱們一直使用djangomanage.py runserver 命令來運行django應用,但這只是咱們的開發環境,當項目真正部署上線的時候這作就不可行了,必須將咱們的項目部署到特定的web服務器上。apache

 

安裝apachedjango

Apache是很是有名的web服務器軟件,若是想讓咱們web項目運行幾乎離不開它。windows

Apache官方網站:http://httpd.apache.org/瀏覽器

根據本身的環境,選擇相應的版本進行下載。apache 官網沒有windows 64位版本,能夠經過下面的連接進行下載:win7 64位:http://www.apachelounge.com/download/win64/服務器

 

下載安裝完成,apahche的目錄結構以下:app

 

修改conf/httpd.conf文件:ide

…… ServerRoot "D:/pydj/Apache24" …… Listen 127.0.0.1:8089 #修改端口號 …… ServerName www.example.com:8089 …… DocumentRoot "D:/pydj/Apache24/htdocs" <Directory "D:/pydj/Apache24/htdocs"> …… ScriptAlias /cgi-bin/ "D:/pydj/Apache24/cgi-bin/" …… <Directory "D:/pydj/Apache24/cgi-bin"> AllowOverride None Options None Require all granted </Directory> ……

主要就是路徑和端口號的修改,若是你在啓動apache的httpd.exe程序時一閃就沒了,請檢查這些配置。性能

 

啓動bin/httpd.exe程序

經過瀏覽器訪問:http://127.0.0.1:8089/

 

如今能夠說明apache工做是正常的了。 

 

 

安裝mod_wsgi

  The aim of mod_wsgi is to implement a simple to use Apache module which can host any Python application which supports the Python WSGI interface. 

The module would be suitable for use in hosting high performance production web sites, as well as your average self managed personal sites running on

 web hosting services.

  (mod_wsgi的目的是實現一個簡單的使用Apache模塊能夠舉辦任何Python應用程序支持PythonWSGI接口。該模塊將適用於主機的高性能生產的網站,以及通常的自我管理我的網站的網頁寄存服務運行。)直接google翻譯的,湊合的大概理解是幹啥用的。

mod_wsgi網站:http://code.google.com/p/modwsgi/

下載地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

win7 64位、python 2.7.6apachehttpd-2.4.10)對應版本爲:mod_wsgi-3.5.ap24.win-amd64-py2.7.zip

解壓以後將獲得一個mod_wsgi.so 文件,將其拷貝到Apache24\modules\ 目錄下。

 

配置apachedjango項目

由於你的目錄必定和個人同樣,因此,我再強調一下個人目錄:

apache 存放目錄:D:\pydj\Apache24

django項目目錄:D:\pydj\myweb

 

再次打apache的配製文件httpd.conf

…… #添加mod_wsgi.so 模塊
LoadModule wsgi_module modules/mod_wsgi.so 
#
指定myweb項目的wsgi.py配置文件路徑 WSGIScriptAlias / D:/pydj/myweb/myweb/wsgi.py
#
指定項目路徑 WSGIPythonPath D:/pydj/myweb <Directory D:/pydj/myweb/myweb> <Files wsgi.py> Require all granted </Files> </Directory>

上面的路徑,請根據本身的實際狀況進行修改。

 

下面配置myweb/wsgi.py文件:

…… import os os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myweb.settings") from django.core.wsgi import get_wsgi_application application = get_wsgi_application()

  在咱們生成djnago項目時這些信息已經自動生成,其實咱們不用對其作任何修改。

 

打開settings.py文件添加:

…… ALLOWED_HOSTS = ['127.0.0.1', 'localhost']


再次啓動Apache24/bin/httpd.exe程序

經過瀏覽器訪問:http://127.0.0.1:8089/

 

 

 =================================

   備註:最近博客沒更新技術,是由於我在整理《django學習手冊》,是一本必定可讓你學會開發網站手冊,沒有廢話,沒有大道理,跟着作,原來用django開發如些簡單。

相關文章
相關標籤/搜索