如何将 Django 放在网站的子目录中?
How to put Django within a subdirectory of a website?
我想在 mysite.com/
运行 WordPress,因为它更容易编辑销售文案等。我想 运行 我的 Django 站点 mysite.com/members/
httpd.conf:
<VirtualHost *:80>
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com
WSGIDaemonProcess mysite python-path=/var/www/mysite.com/mysite:/var/www/mysite.com/
WSGIProcessGroup mysite
WSGIScriptAlias / /var/www/mysite.com/mysite/mysite/wsgi.py
</VirtualHost>
我到底需要做什么才能让 Django 运行s 在我的 domain/website 的 /members/
目录中?
使用:
WSGIScriptAlias /members /var/www/mysite.com/mysite/mysite/wsgi.py
请注意,这样做时,由于您错误地将 DocumentRoot 设置为源代码的父目录,人们将能够下载源代码,包括设置模块中的敏感信息。
因此,请勿将 DocumentRoot 设置为您拥有的内容。让它引用一个空目录,整个服务器的默认 htdocs 目录。
为了跟进之前的回答和评论,这里有一个例子,说明如果我不得不这样做的话:
<VirtualHost *:80>
# WordPress
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com
# Django
WSGIDaemonProcess mysite python-path=/var/django/django_project/virtualenv/django_project
WSGIProcessGroup mysite
WSGIScriptAlias /members /var/django/django_project/django_project/wsgi.py
Alias /members/static/ /var/django/django_project/static/
</VirtualHost>
但完全理解评论中提出的安全问题。
我想在 mysite.com/
运行 WordPress,因为它更容易编辑销售文案等。我想 运行 我的 Django 站点 mysite.com/members/
httpd.conf:
<VirtualHost *:80>
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com
WSGIDaemonProcess mysite python-path=/var/www/mysite.com/mysite:/var/www/mysite.com/
WSGIProcessGroup mysite
WSGIScriptAlias / /var/www/mysite.com/mysite/mysite/wsgi.py
</VirtualHost>
我到底需要做什么才能让 Django 运行s 在我的 domain/website 的 /members/
目录中?
使用:
WSGIScriptAlias /members /var/www/mysite.com/mysite/mysite/wsgi.py
请注意,这样做时,由于您错误地将 DocumentRoot 设置为源代码的父目录,人们将能够下载源代码,包括设置模块中的敏感信息。
因此,请勿将 DocumentRoot 设置为您拥有的内容。让它引用一个空目录,整个服务器的默认 htdocs 目录。
为了跟进之前的回答和评论,这里有一个例子,说明如果我不得不这样做的话:
<VirtualHost *:80>
# WordPress
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com
# Django
WSGIDaemonProcess mysite python-path=/var/django/django_project/virtualenv/django_project
WSGIProcessGroup mysite
WSGIScriptAlias /members /var/django/django_project/django_project/wsgi.py
Alias /members/static/ /var/django/django_project/static/
</VirtualHost>
但完全理解评论中提出的安全问题。