Apache部署django項目


Apache部署django項目


----------------------------------------------html

 

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

 

安裝apacheweb

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

Apache官方網站:http://httpd.apache.org/django

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

 

下載安裝完成,apahche的目錄結構以下:瀏覽器

 

修改conf/httpd.conf文件:服務器

複製代碼
……
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程序時一閃就沒了,請檢查這些配置。app

 

啓動bin/httpd.exe程序ide

經過瀏覽器訪問: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應用程序支持Python的WSGI接口。該模塊將適用於主機的高性能生產的網站,以及通常的自我管理我的網站的網頁寄存服務運行。)直接google翻譯的,湊合的大概理解是幹啥用的。

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

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

如win7 64位、python 2.7.六、apache(httpd-2.4.10)對應版本爲:mod_wsgi-3.5.ap24.win-amd64-py2.7.zip

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

 

配置apache和django項目

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

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/

 

 

原文轉之https://www.cnblogs.com/fnng/p/4119712.html

相關文章
相關標籤/搜索