AH00112:警告 - Centos 6 / Apache 2.4 / Django 1.9 / mod_wsgi 3.5 / python 2.7
AH00112: Warning - Centos 6 / Apache 2.4 / Django 1.9 / mod_wsgi 3.5 / python 2.7
我有一个 GoDaddy 专用服务器。我似乎已经成功地正确设置了所有内容,但我似乎无法弄清楚为什么会出现此问题:
当我重新启动 apache 时:
[root@sXXX-XXX-XXX-XXX /]# /scripts/restartsrv httpd
我明白了:
AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
我从未指定 /usr/local/apache/var/www/<my_django_project>
的路径 ???
它似乎只是将我的 var/www/<my_django_project>
附加到 /usr/local/apache
...不知道为什么
我的 httpd.conf 文件:
... a bunch of pre configured goDaddy stuff I'm guessing here ...
LoadModule wsgi_module /usr/local/apache/extramodules/mod_wsgi.so
AddHandler wsgi-script .wsgi
<VirtualHost XXX.XXX.XXX.X:80>
ServerName XXX.XXX.XXX.XXX
ErrorLog /var/log/httpd/error.log
# DocumentRoot /public_html/
ServerAdmin admin-noreply@mysite.com
Alias /favicon.ico /var/www/<my_django_project>/static/favicon.ico
Alias /static /var/www/<my_django_project>/static
<Directory /var/www/<my_django_project>/static>
Require all granted
</Directory>
Alias /media /var/www/<my_django_project>/media
<Directory /var/www/<my_django_project>/media>
Require all granted
</Directory>
WSGIDaemonProcess <my_django_project> python-path= /var/www/<my_django_project>:/var/www/<my_django_project>/<my_django_project>:/var/www/<my_django_project>/<my_django_project_site>:/usr/local/lib/python2.7/site-packages
WSGIProcessGroup <my_django_project>
WSGIScriptAlias / /var/www/<my_django_project>/<my_django_project>/wsgi.py
<Directory /var/www/<my_django_project>/<my_django_project>>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
... more stuff already in the conf file ...
当我在互联网浏览器中转到 XXX-XXX-XXX-XXX:80
时,它告诉我找不到 .htaccess 文件。但现在它只是将我重定向到 http://XXX.XXX.XXX.XXX/cgi-sys/defaultwebpage.cgi
如有任何帮助,我们将不胜感激
编辑:
有人指出AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
是因为没有在path前面加上/
我的浏览器现在给我:
Forbidden
You don't have permission to access / on this server.
Server unable to read htaccess file, denying access to be safe
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
这表明您已将 Apache 配置文件中某处的 DocumentRoot
指令设置为没有前导斜杠的路径。当发生这种情况时,Apache 会将路径附加到 ServerRoot
目录的末尾,在您的例子中是 /usr/local/apache
。确保您设置的所有文件系统路径都是带有前导斜杠的绝对路径名。
我有一个 GoDaddy 专用服务器。我似乎已经成功地正确设置了所有内容,但我似乎无法弄清楚为什么会出现此问题:
当我重新启动 apache 时:
[root@sXXX-XXX-XXX-XXX /]# /scripts/restartsrv httpd
我明白了:
AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
我从未指定 /usr/local/apache/var/www/<my_django_project>
的路径 ???
它似乎只是将我的 var/www/<my_django_project>
附加到 /usr/local/apache
...不知道为什么
我的 httpd.conf 文件:
... a bunch of pre configured goDaddy stuff I'm guessing here ...
LoadModule wsgi_module /usr/local/apache/extramodules/mod_wsgi.so
AddHandler wsgi-script .wsgi
<VirtualHost XXX.XXX.XXX.X:80>
ServerName XXX.XXX.XXX.XXX
ErrorLog /var/log/httpd/error.log
# DocumentRoot /public_html/
ServerAdmin admin-noreply@mysite.com
Alias /favicon.ico /var/www/<my_django_project>/static/favicon.ico
Alias /static /var/www/<my_django_project>/static
<Directory /var/www/<my_django_project>/static>
Require all granted
</Directory>
Alias /media /var/www/<my_django_project>/media
<Directory /var/www/<my_django_project>/media>
Require all granted
</Directory>
WSGIDaemonProcess <my_django_project> python-path= /var/www/<my_django_project>:/var/www/<my_django_project>/<my_django_project>:/var/www/<my_django_project>/<my_django_project_site>:/usr/local/lib/python2.7/site-packages
WSGIProcessGroup <my_django_project>
WSGIScriptAlias / /var/www/<my_django_project>/<my_django_project>/wsgi.py
<Directory /var/www/<my_django_project>/<my_django_project>>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
... more stuff already in the conf file ...
当我在互联网浏览器中转到 XXX-XXX-XXX-XXX:80
时,它告诉我找不到 .htaccess 文件。但现在它只是将我重定向到 http://XXX.XXX.XXX.XXX/cgi-sys/defaultwebpage.cgi
如有任何帮助,我们将不胜感激
编辑:
有人指出AH00112: Warning: DocumentRoot [/usr/local/apache/var/www/<my_django_project>] does not exist
是因为没有在path前面加上/
我的浏览器现在给我:
Forbidden
You don't have permission to access / on this server.
Server unable to read htaccess file, denying access to be safe
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
这表明您已将 Apache 配置文件中某处的 DocumentRoot
指令设置为没有前导斜杠的路径。当发生这种情况时,Apache 会将路径附加到 ServerRoot
目录的末尾,在您的例子中是 /usr/local/apache
。确保您设置的所有文件系统路径都是带有前导斜杠的绝对路径名。