htaccess 403尝试使用ErrorDocument时遇到Forbidden错误

时间:2017-12-11 06:25:02

标签: apache .htaccess http-status-code-403 custom-pages

我想在我的项目中有一个自定义的403页面。所以我在.htaccess文件中添加了这些代码:

Order deny,allow
Deny from all
Allow from 192.168.1.0/24

ErrorDocument 403 /403.htm

但是当项目从一个超出范围的IP运行,并且必须发生403错误时,自定义403页面重定向不起作用,我也会给出另一个错误。

  

禁止

     

您无权访问此服务器上的/ app /   此外,尝试时遇到403 Forbidden错误   使用ErrorDocument来处理请求。

这是什么问题?我在StackOverflow和其他网站上阅读过不同的文章,但没有一篇文章无法解决这个问题。

2 个答案:

答案 0 :(得分:0)

是的,我可以帮助一点点来解决权限问题,我遇到了同样的问题,你只需要给你/ app的权限+777

如果你有linux机器,请进入你的web文件夹

sudo chmod -R +777 /app  

并对你在那里写的任何其他文件夹做同样的事情

并且对于403错误我认为你错过了“我”如果我没错,

Order deny,allow
Deny from all
Allow from 192.168.1.0/24

ErrorDocument 403 /403.html

:) :)

答案 1 :(得分:0)

问题在于 deny from all 拒绝一切,包括错误文档。

但是嘿,.htaccess 文件级联工作,所以你可以

  1. 在您的网络根目录中创建一个子文件夹(假设您的网络根目录为 /www - /www/errordocs
  2. => 把你的 ErrorDocuments 放在里面,比如 403.html 等等。
  3. 创建另一个.htaccess 那里 - /www/errordocs/.htaccess
  4. => 放入这个 /www/errordocs/.htaccessallow from all
  5. 在 webroot (.htaccess ) 放
    /www/.htaccess 等等。

如果这仍然不适合您,请检查文件夹和文件是否有 public/others/everyone READ 权限

ErrorDocument 403 /errordocs/403.html => /www/errordocs
755 => /www/errordocs/.htaccess
640 => /www/errordocs/403.html

不要混淆 - Windows 操作系统 具有权限,您至少需要 644 对这些 more on the Windows permissions here 的读取权限。

请记住,此文件夹中的文件都是公开的!(不要在那里放任何您不想公开的内容:-)