无法使用 Apache/Ubuntu 部署夹层 CMS
Can't Deploy Mezzanine CMS using Apache/Ubuntu
我试图通过从头开始部署网站变得更好,所以我使用最新的 Ubuntu(我认为是 19.04)从 Linode 设置了一个新的 Nanode。
我按照说明安装了 Mezzanine CMS(基于 Django),一切顺利,我能够 运行 开发服务器在端口 8000 上正常测试网站。
我确实安装了 UFW,现在只有 activity 端口 80 没有被拒绝。我还有 mysql 数据库 运行 夹层不是 Djangos 默认的 SQLlite。
我安装了 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()
我阅读的其他内容要求我将以下内容添加到我的 settings.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()
我从来没有用 Apache 解决这个问题,但我确实使用 Nginx 和 Uwsgi 成功部署了这个博客,只是要小心你的虚拟环境完成后的路径我意识到这是我有 apache 的问题。
我试图通过从头开始部署网站变得更好,所以我使用最新的 Ubuntu(我认为是 19.04)从 Linode 设置了一个新的 Nanode。
我按照说明安装了 Mezzanine CMS(基于 Django),一切顺利,我能够 运行 开发服务器在端口 8000 上正常测试网站。
我确实安装了 UFW,现在只有 activity 端口 80 没有被拒绝。我还有 mysql 数据库 运行 夹层不是 Djangos 默认的 SQLlite。
我安装了 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()
我阅读的其他内容要求我将以下内容添加到我的 settings.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()
我从来没有用 Apache 解决这个问题,但我确实使用 Nginx 和 Uwsgi 成功部署了这个博客,只是要小心你的虚拟环境完成后的路径我意识到这是我有 apache 的问题。