Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.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 htaccess部分查询字符串重写_Apache_.htaccess - Fatal编程技术网

Apache htaccess部分查询字符串重写

Apache htaccess部分查询字符串重写,apache,.htaccess,Apache,.htaccess,真实URL:example.com/projects/test/?action=Something&var=val 伪造(SEO)URL:example.com/test/Something/?var=val 我希望将以下原始URL重新写入所需的URL。我有 重写规则^test/?([^/]*)/?$/projects/test/?action=$1&var=$2[L] 但是,问题是我希望操作始终看起来像一个文件夹,并允许不同的操作具有不同的参数。我不需要这些参数看起来很整洁,所以在url的末尾

真实URL:example.com/projects/test/?action=Something&var=val

伪造(SEO)URL:example.com/test/Something/?var=val

我希望将以下原始URL重新写入所需的URL。我有

重写规则^test/?([^/]*)/?$/projects/test/?action=$1&var=$2[L]

但是,问题是我希望操作始终看起来像一个文件夹,并允许不同的操作具有不同的参数。我不需要这些参数看起来很整洁,所以在url的末尾有一个查询字符串就足够了


编辑:澄清URL

添加标志[QSA]解决了问题。

哪个是真正的URI(实际存在的目录等),哪个是来自外部世界的[SEO]URI?您的示例重写使“原始”URI看起来像是真实的URI。“期望的”URI是进入服务器的URI吗?如果只想保留传入的查询字符串,请将[QSA]标志添加到重写中。