将Django服务到远程apache服务器

时间:2015-07-21 13:53:08

标签: python django apache host httpd.conf

电脑2 = win-64bit

计算机1 = ubuntu 14.04

Django = 1.7(在计算机1上)(在virtualenv中运行)

python = python 2.7

Apache = apachehaus 2.4(在coumputer 2上)

基本上我要做的是在不同的计算机上安装Django Apache。

所以计算机1是ubuntu运行django而计算机2是windows运行apache24

我对web-dev很新,但我相信它会如下所示:

堆栈1 网络访问 - > Apache-Loaded-mod_wsgi(计算机2) - > Django(计算机1)

是或是吗?我真的不知道。

堆栈2 网络访问 - > Apache(计算机2) - > Apache-Loaded-mod_wsgi(计算机1) - > Django(计算机1)

如果我这样做:

python mangage.py runserver 192.xxx.x.4:8000

它有效,我可以在网络上看到它。 (ubuntu的)

但是现在我有第二台带有apache24的计算机(windows(计算机2))并且我配置了httpd.conf文件我

LoadModule wsgi_module modules/mod_wsgi.so
Listen 8000
Listen 80

然后我打开httpd-vhosts.conf,这就是我遇到的问题。 我想在vhosts.conf中获取运行runserver的django实例。

以下是httpd-vhost.conf

<VirtualHost 192.xxx.x.4:8000>
    ServerAdmin danielsauceda34@gmail.com

    ServerName 192.xxx.x.4
    ServerAlias http://192.168.1.4
    <Directory /home/daniel/Develop/Workspaces/mgi/mdcs>
        Order deny,allow
        Allow from all
    </Directory>

    WSGIScriptAlias / /home/daniel/Develop/Workspaces/mgi/mdcs/mgi.wsgi
    <Directory /home/daniel/Develop/Workspaces/mgi/mdcs/static/>
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

我的wsgi.py是以下

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mgi.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

如果有人可以帮我解决这个问题,我会非常感激

常见问题:

问:为什么在两台电脑上? 答:安全政策。

问:为什么你不使用ngnix? 答:我可能认为Stack 2是正确的。但是在某些时候需要apache。

0 个答案:

没有答案