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 什么';这个修改规则有什么问题吗?_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Apache 什么';这个修改规则有什么问题吗?

Apache 什么';这个修改规则有什么问题吗?,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,有人能发现这个URL重写有什么问题吗?我无法让它传递任何要获取的内容(脚本已加载,但未传递任何参数): 我想将“archive/browse/”映射到“archive.php?action=browse”。启用此选项后,可能会出现一些冲突。如果已启用,Apache会首先尝试查找一个具有类似名称的文件,以将请求映射到该文件,然后再将其传递给mod_rewrite。因此,在mod_rewrite将其映射到您的/archive.php?action=browse之前,请求/archive/browse

有人能发现这个URL重写有什么问题吗?我无法让它传递任何要获取的内容(脚本已加载,但未传递任何参数):


我想将“archive/browse/”映射到“archive.php?action=browse”。

启用此选项后,可能会出现一些冲突。如果已启用,Apache会首先尝试查找一个具有类似名称的文件,以将请求映射到该文件,然后再将其传递给mod_rewrite。因此,在mod_rewrite将其映射到您的
/archive.php?action=browse
之前,请求
/archive/browse/
/archive.php/browse/
结尾

尝试使用以下命令禁用它:

Options -MultiViews

启用时可能会出现一些冲突。如果已启用,Apache会首先尝试查找一个具有类似名称的文件,以将请求映射到该文件,然后再将其传递给mod_rewrite。因此,在mod_rewrite将其映射到您的
/archive.php?action=browse
之前,请求
/archive/browse/
/archive.php/browse/
结尾

尝试使用以下命令禁用它:

Options -MultiViews
/archive/
之后的任何内容重写为
archive.php?action=test/dir/path


/archive/
之后的任何内容重写为
archive.php?action=test/dir/path

,尽管如果没有任何内容通过,您的场景会产生更大的影响sense@VinkoVrsalovic:这个选项不会改变任何关于mod_重写的内容。它只是阻止Apache查找类似的命名文件。另一个解决方案是重命名文件,如果多视图确实是这种行为的原因。我知道,我在问(/(.*),内部组仍然是$1吗?@Vinko Vrsalovic:不,那是
$2
。但是他说什么都不能通过,所以我不认为这是规则。虽然如果什么都不能通过,你的情况会更糟sense@VinkoVrsalovic:这个选项不会改变任何关于mod_重写的内容。它只是阻止Apache查找类似的命名文件。另一个解决方案是重命名文件,如果多视图确实是这种行为的原因。我知道,我在问(/(.*),内部组仍然是$1吗?@Vinko Vrsalovic:不,那是
$2
。但他说什么都不能通过,所以我认为这不是规则。你为什么接受查查的回答?我认为您无法将任何内容传递给
$\u get
?因为它解决了大多数需要我期望结果的情况(尽管不是我的特例)。通过接受它,其他具有类似目标的用户将更容易找到最可能的解决方案。这是目前最好的答案,但如果能找到更有效的解决方案,我很乐意换一个,接受另一个。你为什么接受查查的答案?我认为您无法将任何内容传递给
$\u get
?因为它解决了大多数需要我期望结果的情况(尽管不是我的特例)。通过接受它,其他具有类似目标的用户将更容易找到最可能的解决方案。这是目前最好的答案,但如果能找到更有效的解决方案,我很乐意换一个,接受另一个。
Options -MultiViews
RewriteEngine On
RewriteRule ^archive/(.*)$  archive.php?action=$1 [QSA,L]