Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.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
是否有一些Apache配置可以从URL中过滤掉双斜杠?_Apache_Mod Rewrite_Url Rewriting - Fatal编程技术网

是否有一些Apache配置可以从URL中过滤掉双斜杠?

是否有一些Apache配置可以从URL中过滤掉双斜杠?,apache,mod-rewrite,url-rewriting,Apache,Mod Rewrite,Url Rewriting,我有网络软件,我需要有这样的网址 然后我在.htaccess中捕获这些URL,重定向到一个php文件,然后将其解析为$\u GET并将所有内容转发到主应用程序。双斜杠很重要,它意味着已经设置了var2,并且包含一个空值,换句话说$var2==空 在某些服务器上,它可以按预期工作,但在某些服务器上,URL会以静默方式转换为 这当然会破坏一切,因为它将其解析为$var1='val1',$var2='var3',$val3='' 不幸的是,我已经无法访问其中一台服务器,我也不记得它是不是Apach

我有网络软件,我需要有这样的网址

然后我在.htaccess中捕获这些URL,重定向到一个php文件,然后将其解析为$\u GET并将所有内容转发到主应用程序。双斜杠很重要,它意味着已经设置了var2,并且包含一个空值,换句话说$var2==空

在某些服务器上,它可以按预期工作,但在某些服务器上,URL会以静默方式转换为

这当然会破坏一切,因为它将其解析为$var1='val1',$var2='var3',$val3=''

不幸的是,我已经无法访问其中一台服务器,我也不记得它是不是Apache,但我们假设它是Apache,因为我们大部分时间都在处理这台服务器


是否有一些配置可以控制它?这会打开/关闭双斜杠的清理。

Apache会在将空路径段映射到文件系统之前将其剥离。要在mod_rewrite中获取原始请求的URI,请检查
%{the_request}
中的请求行:

RewriteCond %{THE_REQUEST} ^GET\ (/[^?\ ]*)
RewriteRule …

然后,您可以引用
RewriteCond
%1

的匹配。也许您应该提出一个不依赖格式错误的URI来操作的URL方案。双斜杠算作无效URL?