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 htaccess如何删除尾随问号_.htaccess - Fatal编程技术网

.htaccess htaccess如何删除尾随问号

.htaccess htaccess如何删除尾随问号,.htaccess,.htaccess,我如何使用htaccess去除尾随?从…起 ? 所以它显示如下: 不幸的是,无法通过重写规则中的URI匹配检测错误的尾随斜杠(查询字符串被显式删除),您也无法对照%{query\u string}变量进行检查,因为在这两种情况下,无论是否有尾随?,变量都将为空。您需要做的是通过%{the_request}变量,使用实际请求匹配尾部斜杠: RewriteEngine On RewriteCond %{THE_REQUEST} ^(GET|HEAD|POST)\ /[^\ \?]*\?($|\ )

我如何使用htaccess去除尾随?从…起 ?

所以它显示如下:


不幸的是,无法通过
重写规则
中的URI匹配检测错误的尾随斜杠(查询字符串被显式删除),您也无法对照
%{query\u string}
变量进行检查,因为在这两种情况下,无论是否有尾随,变量都将为空。您需要做的是通过
%{the_request}
变量,使用实际请求匹配尾部斜杠:

RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|HEAD|POST)\ /[^\ \?]*\?($|\ )
RewriteRule ^(.*)$ /$1? [L,R=301]
这将删除URL后面的零散的。上面的正则表达式与一个请求相匹配,它们将如下所示:

GET /directory/folder/? HTTP/1.1
因此,正则表达式尝试匹配
GET
部分(也可以是
HEAD
POST
,存在其他方法,但不会影响您在浏览器URL地址栏中看到的内容),然后是请求的URI(
/[^\\?]*
),然后是零散的,然后是
($\\)
匹配请求的结尾(因为请求可以在没有HTTP/1.1位的情况下结束)或空格