我想通过从头开始部署网站来变得更好,所以我使用最新的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()
答案 0 :(得分:0)
我从来没有使用Apache解决这个问题,但是我确实使用Nginx和Uwsgi成功地部署了此博客,请注意虚拟环境完成后的路径,我意识到这是我遇到的问题。