虽然我找到了一堆技术支持来使用 WSGI 在 Apache 上部署 Django,但事实上,不幸的是,它们都让我感到困惑,我无法让 Django 运行。我希望这是一份真正轻松的工作,但作为一个新人,我面临着困难。
我的/home/zia/Documents/Codes/Django/website1 和 ..../website2 目录中分别有两个 Django 项目,即 website1 和 website2。包含 settings.py 文件的文件夹是/website1 和/website2 目录中的 root/。
Apache、mod_wsgi 一切都按要求安装。如何编辑 apache2.conf 和 wsgi.py 文件以保持这两个项目在端口 8080 和 8081 上运行?
过去几天我一直在努力解决这个问题,并尝试了以下所有网站。
link1 , link2 , link3 , link4
更新1:
我从一开始就遵循以下方法使事情进展顺利,但发现自己遇到了一些新问题。请指导我在哪里我错了。
sudo apt-get install libapache2-mod-wsgi && sudo apt-get update && sudo apt-get install apache2
Listen 8083
160.75.133.175 160.75.133.175
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<VirtualHost *:8083>
ServerAdmin zia@gmail.com
ServerName 160.75.133.175
ServerAlias http://160.75.133.175
<Directory /home/zia/Documents/Codes/Django/sql_api/ >
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / /home/zia/Documents/Codes/Django/sql_api/root/wsgi.py
WSGIDaemonProcess 160.75.133.175 user=www-data group=www-data threads=25 python-path=/home/zia/Documents/Codes/Django/sql_api/root/:/usr
WSGIProcessGroup 160.75.133.175
ErrorLog /home/zia/Documents/Codes/Django/sql_api/root/error.log
</VirtualHost>
sudo a2enmod wsgi && sudo a2ensite sql_api.conf && sudo service apache2 restart
http://160.75.133.175:8083/
但收到以下错误:内部服务器错误
服务器遇到内部错误或配置错误,无法完成您的请求。
请通过 zia@gmail.com 联系服务器管理员,告知他们此错误发生的时间以及您在此错误之前执行的操作。
服务器错误日志中可能提供有关此错误的更多信息。
Apache/2.4.7 (Ubuntu) 服务器在 160.75.133.175 端口 8082
注意 :当我在/var/www/目录中创建一个 Django 项目,然后执行相同的方法然后工作得很好!我想是因为我试图访问/home/zia/.... dir,所以有这个问题。无论如何,这只是一个猜测。我会很感激你的帮助。
最佳答案
谢谢大家。终于找到了一个工作流程。请按顺序执行以下步骤:
sudo apt-get install libapache2-mod-wsgi && sudo apt-get update && sudo apt-get install apache2
Listen 8083
160.75.133.175 160.75.133.175
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<VirtualHost *:8083>
ServerAdmin zia@gmail.com
ServerName 160.75.133.175
ServerAlias http://160.75.133.175
<Directory /home/zia/Documents/Codes/Django/sql_api/ >
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / /home/zia/Documents/Codes/Django/sql_api/root/wsgi.py
WSGIDaemonProcess 160.75.133.175 user=www-data group=www-data threads=25 python-path=/home/zia/Documents/Codes/Django/sql_api/root/:/usr
WSGIProcessGroup 160.75.133.175
ErrorLog /home/zia/Documents/Codes/Django/sql_api/root/error.log
</VirtualHost>
sys.path.append('/home/zia/Documents/Codes/Django/sql_api/root')
sys.path.append('/home/zia/Documents/Codes/Django/sql_api')
sudo a2enmod wsgi && sudo a2ensite sql_api.conf && sudo service apache2 restart
http://160.75.133.175:8083/
关于django - 在 Apache 和 WSGI 上部署 Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28331641/