4

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

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

ErrorDocument 403 /403.htm

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

禁止的

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

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

4

2 回答 2

1

问题是deny from all否认一切,包括错误文件。

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

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

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

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

不要混淆 - Windows 操作系统有权限,您至少需要Everyone对这些权限的读取权限,更多关于这里的 Windows 权限

请记住,此文件夹中的文件将全部公开!(不要放任何你不想公开的东西:-)

于 2021-02-22T20:29:42.703 回答
-1

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

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

sudo chmod -R +777 /app  

并对您在那里编写的任何其他文件夹执行相同操作

对于 403 错误,我认为您错过了“l”如果我没记错的话,

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

ErrorDocument 403 /403.html

:) :)

于 2017-12-11T06:38:03.503 回答