我有一个网站(例如www.example.com)和一个Web服务器,我的目标是将Django项目(已经在我的家用电脑上完成)上载到示例网站的子文件夹中。也就是说,我希望我的django项目可以在www.example.com/mynewdjango/上运行。 Web服务器运行Apache和MySql。我的项目也使用Mysql。 是否有分步指南来做到这一点? 谢谢!
答案 0 :(得分:0)
答案 1 :(得分:0)
为了更加具体,我将提供更多信息:
我的官方网站是www.serres.gr(joomla网站)。我已经将Django项目上传到joomla网站所在的官方Web服务器上。 Python,pip,django和所有依赖项都可以正常工作。
joomla网站位于路径/ var / www / html /中。 Apache配置文件000-default.conf是:
<VirtualHost *:80>
ServerName www.serres.gr
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.serres.gr
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
Django项目位于/ var / www / diplomatiki路径中。
我的第一个选择是使jango项目在url ekloges.mysite.gr上运行。另一个选项是使其在URL www.mysite.gr/ekloges/上运行。 我在站点可用文件夹中创建了django.conf文件,如下所示:
<VirtualHost *:80>
ServerName ekloges.serres.gr
DocumentRoot /var/www/diplomatiki
WSGIScriptAlias /ekloges /var/www/diplomatiki/diplomatiki/wsgi.py
# adjust the following line to match your Python path
WSGIDaemonProcess ekloges.serres.gr processes=2 threads=15 display-name=%{GROUP} python-home=/var/www/diplomatiki/venv/lib/python3.5
WSGIProcessGroup ekloges.serres.gr
<directory /var/www/diplomatiki>
AllowOverride all
Require all granted
Options FollowSymlinks
</directory>
Alias /static/ /var/www/diplomatiki/static/
<Directory /var/www/diplomatiki/static>
Require all granted
</Directory>
</VirtualHost>
最后,我的wsgi.py文件是:
import os
import time
import traceback
import signal
import sys
from django.core.wsgi import get_wsgi_application
sys.path.append('/var/www/diplomatiki')
sys.path.append('/var/www/diplomatiki/diplomatiki')
# adjust the Python version in the line below as needed
sys.path.append('/var/www/diplomatiki/venv/lib/python3.5/site-packages')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "diplomatiki.settings")
try:
application = get_wsgi_application()
except Exception:
# Error loading applications
if 'mod_wsgi' in sys.modules:
traceback.print_exc()
我有2个问题:
1)我应该对上面的文件进行哪些更改,以便django项目可以按照我对选项1的说明进行加载,并且应该对选项2进行哪些更改(目前这两个选项均无效)
2)如果我最终决定在ekloges.serres.gr(第一个选项)加载django项目,我想我应该从我的互联网提供商处请求为ekloges.serres.gr添加dns记录,对吗? / p>