【发布时间】:2016-12-01 18:04:54
【问题描述】:
我有以下可用的 Django 配置:
WSGIScriptAlias / /MyDjangoProjectFolder/MyDjangoProject/wsgi.py
WSGIPythonPath /MyDjangoProjectFolder
<Directory /MyDjangoProjectFolder/MyDjangoProject>
<Files wsgi.py>
Order deny,allow
Require all granted
</Files>
</Directory>
Alias /base_context_path/static/ /MyDjangoProjectFolder/static/
<Directory /MyDjangoProjectFolder/static>
Require all granted
</Directory>
Django 响应<ip>/base_context_path/rest(用于由前端调用的其余 API)和<ip>/base_context_path/admin(用于管理,它使用 base_context_path/static)。
所以Django需要的一切都在<ip>/base_context_path/*。
现在我需要在同一个 Apache2 上部署一个用 Angular 开发的网站,所以我想了解如何让它工作。我有这个网站的域名(mydomainname.org),但不是 django 应用程序的专用域名。当访问我的域名时,我希望我的网站会出现。
这是我对我的网站的尝试:
<VirtualHost *:80>
ServerName mydomainname.org
DocumentRoot /MyWebSiteFolder
DirectoryIndex index.html
<Directory "/MyWebSiteFolder">
# redirect rules for managing AngularJS
</Directory>
</VirtualHost>
它不起作用 (403)。
对于我的 Django 应用程序,这是我创建的虚拟主机,它不能正常工作(403):
<VirtualHost *:80>
ServerName mydomainname
Alias /base_context_path/static/ /MyDjangoProjectFolder/static
WSGIScriptAlias / /MyDjangoProjectFolder/MyDjangoProject/wsgi.py
WSGIDaemonProcess MyDjangoProject python-path=/MyDjangoProjectFolder:/usr/local/lib/python2.7/site-packages
WSGIProcessGroup MyDjangoProject
<Directory /MyDjangoProjectFolder/static>
Options -Indexes
Require all granted
</Directory>
所以我有点卡住了。
【问题讨论】:
-
我建议将 nginx 与 django/uwsgi 一起使用。如果你想试试看这个link
-
这是您在 django 虚拟主机配置中的 ServerName 的拼写错误吗?我希望它是您的完全限定域名...(我假设您也关闭了 virtualhost 标签。)
标签: python django apache virtualhost