Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess 403';行不通_.htaccess_Http Status Code 403 - Fatal编程技术网

.htaccess 403';行不通

.htaccess 403';行不通,.htaccess,http-status-code-403,.htaccess,Http Status Code 403,如何强制apache重定向到403错误? 我试过: RewriteRule ^forbid/(.*)$ / [R=403,L] 这在整个站点上造成了500个服务器错误 RewriteRule ^forbid/(.*)$ - [R=403,L] 及 这些根本不起作用 我有以下.htaccess文件: RewriteEngine on RewriteRule ^(config|backup)(.*)$ - [F] [NC] RewriteCond %{REQUEST_FILENAME} !

如何强制apache重定向到403错误?
我试过:

RewriteRule ^forbid/(.*)$ / [R=403,L] 
这在整个站点上造成了500个服务器错误

RewriteRule ^forbid/(.*)$ - [R=403,L] 

这些根本不起作用
我有以下.htaccess文件:

RewriteEngine on
RewriteRule ^(config|backup)(.*)$ - [F] [NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^admin/(.*)$ /admin/index.php?%{QUERY_STRING} [L,QSA] 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !util
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [L,QSA]

请帮帮我

除非您定义了一个我们在您的规则中看不到的
RewriteBase
,否则我认为您不希望
^
在“禁止”您的表达式之前,因为它从技术上讲是以“/”开头的

RewriteRule ^forbid/(.*)$ - [R=403,L]
# Instead try
RewriteRule ^/forbid/(.*)$ - [R=403,L]
# Or
RewriteRule forbid/(.*)$ - [R=403,L]
请尝试以下方法:

RewriteRule ^forbid/(.*)$ - [F]

资料来源:

是的。重定向仅在
3xx
代码范围内有效,
403禁止的
是一个客户端错误,不是重定向。实际上,我已经重写了Base,但我忘了复制它。但无论如何,这没有任何意义。
RewriteRule ^forbid/(.*)$ - [F]