Django + Apache - 找不到我网站的目录

Django + Apache - Can't find directory of my website

我用django框架做了一个网站。现在我正在尝试使用 apache+wsgi 进行部署。这是我的设置。 所以我有一个 ip 59.120.185.12 这是我的 .config:

<VirtualHost *:80>
    ServerName www.vbgetech.com
    ServerAlias vbgetech.com
    ServerAdmin webmaster@localhost

    Alias /media/ /home/max/v_bridge/media/
    Alias /static/ /home/max/v_bridge/static/

    <Directory /home/max/v_bridge/media>
        Require all granted
    </Directory>

    <Directory /home/max/v_bridge/static>
        Require all granted
    </Directory>

    WSGIScriptAlias / /home/max/v_bridge/v_bridge/wsgi.py


    <Directory /home/max/v_bridge/v_bridge/>
    <Files wsgi.py>
        Require all granted
    </Files>
    </Directory>
</VirtualHost>

这是我的 wsgi.py

"""
WSGI config for website project.

It exposes the WSGI callable as a module-level variable named ``application``.

For more information on this file, see
https://docs.djangoproject.com/en/1.8/howto/deployment/wsgi/
"""

import os

from django.core.wsgi import get_wsgi_application
from os.path import join,dirname,abspath

PROJECT_DIR = dirname(dirname(abspath(__file__)))#3
import sys # 4
sys.path.insert(0,PROJECT_DIR) # 5

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "v_bridge.settings")

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

我想我确实遵循了官方文档的所有说明。而且似乎如果我在浏览器上输入 ip,它仍然 return 我是 apache 默认页面。我想那是因为我的服务器无法将 ip 映射到 .conf 文件。有人知道吗?

您应该使用 URL http://www.vbgetech.com 访问该站点。您不一定可以使用 IP 地址。如果您使用 IP,它不会通过主机名查找与 VirtualHost 匹配,因此请求将由 Apache 配置文件中的第一个 VirtualHost 处理,换句话说默认的 [=11] =].默认 VirtualHost 将为您提供默认页面(如果您从未更改过它的话)。

换句话说,如果你添加了一个新的 VirtualHost 而没有修改默认的,那么你将不得不在 URL 中使用一个正确的主机名来匹配你的 VirtualHost.