404在Apache2上为Django deploymen配置mod\uwsgi后出错

2024-09-30 00:28:17 发布

您现在位置:Python中文网/ 问答频道 /正文

在Apache2上为django部署配置mod\uwsgi之后,我得到了404错误。在

Env:Ubuntu服务器14.04.2LTS/Apache 2.4/django 1.8/python 3.4

我的apache2.conf如下(我在conf文件末尾添加的内容):

AddHandler cgi-script .cgi .pl .py

WSGIScriptAlias / /var/www/html/youknowmanagementsystem/youknow/wsgi.py
WSGIPythonPath /var/www/html/youknowmanagementsystem

Alias /static/ /var/www/html/youknowmanagementsystem/statics/

<Directory /var/www/html/youknowmanagementsystem/statics>
Require all granted
</Directory>

<Directory /var/www/html/youknowmanagementsystem/youknow>
<Files wsgi.py>
Require all granted
</Files>
</Directory>

我检查了我的apache2错误日志,上面显示:

^{pr2}$

如何修复404错误?如果我能提供更多的细节,请告诉我。在


Tags: djangopywsgivarconfhtmlwww错误
1条回答
网友
1楼 · 发布于 2024-09-30 00:28:17

这解决了我的问题:https://askubuntu.com/questions/569550/assertionerror-using-apache2-and-libapache2-mod-wsgi-py3-on-ubuntu-14-04-python

Ubuntu 14.04 comes with mod_wsgi 3.4. According to https://code.djangoproject.com/ticket/22948#comment:2 we need to use mod_wsgi version 4.2+ for Python 3.4.

The best way to install mod_wsgi to the latest version is to get it with pip (can be in virtualenv) and then install its module to apache system-wide. In my case I use virtualenv set in /venv_path.

1) Remove problematic package and install dependency

sudo apt-get remove libapache2-mod-wsgi-py3

sudo apt-get install apache2-dev

2) Install mod_wsgi in virtualenv with pip

. /venv_path/bin/activate pip install mod_wsgi

3) Install into Apache (system-wide)

sudo /venv_path/bin/mod_wsgi-express install-module

sudo vi /etc/apache2/mods-available/wsgi_express.load /etc/apache2/mods-available/wsgi_express.conf

Content of /etc/apache2/mods-available/wsgi_express.load

LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi-py34.cpython-34m.so

Content of /etc/apache2/mods-available/wsgi_express.conf

WSGIPythonHome /venv_path

4) Enable the module and restart Apache.

sudo a2enmod wsgi_express

sudo service apache2 restart

5) Check that there are no errors in /var/log/apache2/error.log

所以我们需要在上面的链接中安装mod\wsgi,现在就可以工作了。在

相关问题 更多 >

    热门问题