系统相关
首页 > 系统相关> > linux – 使用.htaccess重定向403错误

linux – 使用.htaccess重定向403错误

作者:互联网

我想使用.htaccess重定向任何403,但它似乎不起作用.

Options +FollowSymlinks

RewriteEngine on
ErrorDocument 403 notfound.html
RewriteRule notfound.html

所有帮助赞赏.

谢谢
吉恩

解决方法:

我发现前面的例子有一个问题,那就是:

ErrorDocument 403 /notfound.html

我的网站上有一个存储图像的目录,比如在domain.com/images上

我想如果有人试图访问目录的URL,他们会被重定向到网站的主页.我的问题是,如上所述,浏览器中的URL将保留domain.com/images,然后主页将加载,但主页将引用它无法从该URL访问的样式表. (这是有道理的 – 403应该显示错误信息).

然后我尝试研究如何将403错误重定向到另一个URL,并且一些网站说你不能做302或301 – 你错过了这一点:403是错误,而不是重定向.

但我找到了办法.这是/ images目录中的.htaccess文件:

Options -Indexes
ErrorDocument 403 /images/403.php
RewriteEngine on
RewriteRule ^403.php$/index.php [R=301]

所以基本上第一行阻止了目录列表.

第二行表示对于“权限被拒绝”(即403错误,这是第一行给出的),该站点应加载文件“/images/403.php”.但是你实际上并不需要在该目录中创建任何403.php文件,因为…

第三行打开您的重定向引擎

第四行说如果用户试图加载页面403.php(即在这个.htaccess文件所在的“/ images”目录中),那么应该使用301(永久)重定向将它们重定向到/index.php – 这是根目录(即主页)的索引,而不是/ images子目录的索引(事实上,“/ images”中确实没有索引).

因此 – 如何使用301(永久)重定向将403重定向到另一个URL(或者,您也可以尝试302临时重定向).

标签:htaccess,linux,http-status-code-403
来源: https://codeday.me/bug/20190827/1736600.html