无法使用Apache / Ubuntu部署夹层CMS

时间:2019-08-26 13:04:31

标签: django apache ubuntu wsgi mezzanine

我想通过从头开始部署网站来变得更好,所以我使用最新的Ubuntu(我认为是19.04)从Linode设置了新的Nanode。

我按照说明安装了Mezzanine CMS(基于Django),一切正常,我能够运行开发服务器以在8000端口上测试网站正常。

我确实安装了UFW,现在仅拒绝端口80上的活动。另外,我有使用夹层而不是Django的默认SQLlite运行的mysql数据库。

我安装了Apache和WSGI。起初,Apache由于某些配置问题而无法重启,我认为我已经解决了这个问题。

我有一个在godaddy上使用alexmerced的域,但是我有一个DNS“ a”记录,该记录指向我的linodes IP地址“ mezz.alexmerced.com”

Mezzanine仍然是全新安装,因此除了WSGI和settings.py之外,我还没有进行任何更改。

当前输入URL或IP地址时,我收到禁止的错误,应用程序目录的权限为755。

下面是我的配置文件设置,以查看是否出错。

django_project.conf(/ sites-available /目录中唯一启用的conf文件

<VirtualHost *:80>
    ServerName mezz.alexmerced.com
    ServerAdmin mezzanine@localhost
    DocumentRoot /mymezz
    WSGIScriptAlias / /mymezz/mymezz/wsgi.py
    Alias /static /mymezz/static/

    <Directory /mymezz/>
    <Files wsgi.py>
        Require all granted
    </Files>
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

这是wsgi.py文件

"""
WSGI config for mymezz 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.11/howto/deployment/wsgi/
"""

import os

from django.core.wsgi import get_wsgi_application
from mezzanine.utils.conf import real_project_name

os.environ.setdefault("DJANGO_SETTINGS_MODULE",
                  "%s.settings" % real_project_name("mymezz"))

application = get_wsgi_application()

我读过的其他内容要求我将以下内容添加到我的设置中。py

PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))
sys.path.append(os.path.join(PROJECT_ROOT, ".."))
settings_module = "%s.settings" % PROJECT_ROOT.split(os.sep)[-1]
os.environ["DJANGO_SETTINGS_MODULE"] = settings_module

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

1 个答案:

答案 0 :(得分:0)

我从来没有使用Apache解决这个问题,但是我确实使用Nginx和Uwsgi成功地部署了此博客,请注意虚拟环境完成后的路径,我意识到这是我遇到的问题。