linux apache Forbidden You don't have permission to access / on this server.

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux apache Forbidden You don't have permission to access / on this server.相关的知识,希望对你有一定的参考价值。

/etc/httpd/httpd.conf文件配置
<Directory />
AllowOverride None
Order allow,deny
#allow from all
</Directory>
--------------------------------------------------------------------------
apache服务器测试
[root@localhost lamp]# /home//lamp/apache243/bin/apachectl -t
Syntax OK
--------------------------------------------------------------------------
查看端口
[root@localhost lamp]# netstat -tnl|grep 80
tcp 0 0 :::80 :::* LISTEN
--------------------------------------------------------------------------
主文件夹权限
[root@localhost lamp]# ls -l
total 214592
drwxr-xr-x. 13 root root 4096 Apr 17 20:42 apache243
********************************************
>>>>>>>>>>>问题<<<<<<<<<<<<<<<
在浏览器上访问不了apache服务器
返回错误
Forbidden
You don't have permission to access / on this server.
本人很菜很菜很菜很菜很...........(省略无数字)
请大大们,说得纤细一点。。如果要修改文件内容什么的最好附上路径什么的~谢谢!

You don't have permission to access / on this server.

你没有权限访问 /目录

/etc/httpd/httpd.conf文件配置
<Directory />
AllowOverride None
Order allow,deny
#allow from all --------------》这行被注释 这行是意思是 允许所有访问
</Directory>

root主目录默认是(按照你的)
/home//lamp/apache243/htdocs追问

去了也不行
~。~

追答

- - 看我资料QQ联系

参考技术A 试试这个
/etc/httpd/httpd.conf文件配置
<Directory />
AllowOverride None
Order allow,deny
allow from all
</Directory>追问

不行~。~

追答

修改完要重启httpd
如果还不行就查一下你的www目录的权限有没有问题

Apache 上的 Django 与 mod_wsgi (Linux) - 403 Forbidden

【中文标题】Apache 上的 Django 与 mod_wsgi (Linux) - 403 Forbidden【英文标题】:Django on apache wtih mod_wsgi (Linux) - 403 Forbidden 【发布时间】:2014-02-18 09:33:24 【问题描述】:

好的,所以我正在关注this 教程。当我尝试通过本地服务器访问我的网站时,我收到了这个奇怪的错误:

Forbidden You don't have permission to access / on this server. Apache/2.4.6 (Ubuntu) Server at mysite.com Port 80.

就我而言,我做的一切都是正确的(我实施了两次建议的方法),这很可能是一个操作系统错误(我正在运行 Mint 16 并且错误说(Ubuntu)),但是我没有经验并且所以我需要一些帮助。

我做了一些研究,但这些 (1,2) 问题以及其他问题似乎都无法回答我的情况。

所以这里是mysite.conf 文件:

<VirtualHost *:80>
WSGIScriptAlias / /home/nick/Mysite/mysite.wsgi

ServerName mysite.com
Alias /static /var/www/mysite/static/

<Directory /var/www/mysite/>

Options All
AllowOverride All
Require all granted

</Directory>
</VirtualHost>

还有我的 hosts 文件,它显示了 IP 地址如何重定向到我的本地主机:

127.0.0.1   localhost
127.0.1.1   nick-HP-Notebook-PC
192.168.1.2 mysite.com
192.168.1.2 mysite2.com

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

那么你认为问题是什么。这可能只是一个与 Linux 相关的错误吗? 如果您需要有关该项目或任何其他信息的其他信息,请告诉我。

非常感谢。

更新:

这是我的.wsgi 文件:

import os
import sys
sys.path = ['/var/www/mysite'] + sys.path
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

当我重新启动服务器时,我也会收到此消息。

Restarting web server apache2                                                AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message         [ OK ]

也许这有帮助?

【问题讨论】:

【参考方案1】:

如果这正是您的配置文件,那么我怀疑您使用的路径是错误的。请先解决这个问题。

将 WSGIScriptAlias 设置为正确的路径。

那么您的 WSGI 文件必须类似于:

import os
import sys

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

【讨论】:

我已经更新了我的问题,以反映您的回答。 wsgi 文件很好,项目的路径也很好 你确定你在wsgi中放的路径是正确的吗?并发布错误 您指的是WSGIScriptAlias / /home/nick/Mysite/mysite.wsgi 路径吗?是的,我很确定这是正确的道路。哪个错误?? sys.path = ['/var/www/mysite'] + sys.path 这是我指的路径而不是 WSGIScriptAlias 哦,好吧,对不起。我的项目结构如下:/var/www/mysite/mysite/wsgi.py 文件。应该怎么样?【参考方案2】:

一开始的事情:

WSGIScriptAlias / /home/nick/Mysite/mysite.wsgi

为此,你没有对应的:

<Directory/home/nick/Mysite>
<Files mysite.wsgi>
Require all granted
</Files>
</Directory>

此外,诸如 /home/nick 之类的主目录通常对其他用户不可读,因此 Apache 无论如何也无法读取该目录中的内容。

接下来是:

Alias /static /var/www/mysite/static/

您不应该在最终路径上使用斜杠。在子 URL 时不匹配它们可能会导致问题,尽管通常当尾部斜杠位于 URL 上并且文件系统路径丢失时。最好让它们匹配是否使用斜杠。

【讨论】:

所以项目文件应该移动到另一个目录吗?如果我评论Alias /static /var/www/mysite/static/ 最好? 将它放在您的主目录中并不理想。您仍然需要 Alias 指令,以便 Apache 可以为 Django 托管静态文件,您只需要正确设置它。见docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/…【参考方案3】:

我遇到了同样的问题。

您的 .wsgi 脚本应位于 /var/www/mysite/ 文件夹中,然后应根据需要调整配置文件。

同时删除前导 / :

.. Alias /static /var/www/mysite/static ..

【讨论】:

以上是关于linux apache Forbidden You don't have permission to access / on this server.的主要内容,如果未能解决你的问题,请参考以下文章

Apache 上的 Django 与 mod_wsgi (Linux) - 403 Forbidden

apache 403 forbidden怎么解决

Apache Forbidden 403错误提示

linux apache Forbidden You don't have permission to access / on this server.

apache经常无法访问目录列表,显示403 forbidden

Apache服务器出现Forbidden 403错误提示的解决方法总结