关于重定向我不明白什么?

关于重定向我不明白什么?

这是“this.com”的配置文件中:

RedirectMatch 301 ^/dham/(.*)$ http://other.com/dham/$1

服务器已重启。然后我 curl 一个应该匹配的地址:

~$ curl http://this.com/dham/abc
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>404 Not Found</title>
<h1>Not Found</h1>

为什么不起作用?是的,服务器读取了这个配置文件(我故意拼错了指令,导致重新启动时出错,从而证实了这一点)。我本来希望看到重定向消息。

[编辑] 这种更简单的方法也不起作用:

Redirect 301 /dham http://other.com/dham

进一步直接根据文档进行操作。这种方法甚至行不通,服务器无法启动,并给出有关缺少目标 URL 的错误消息。文档清楚地表明,在位置块中,只需要目标 URL(因为源当然可以从位置中得知)。我正在运行 Apache 2.4。

<Location "/dham">
    Redirect 303 "http://other.com/dham"
</Location>

答案1

事实证明我不明白的是,按字母顺序排列的“较晚”conf 文件中的指令将优先于较早的指令。文档说文件是按字母顺序处理的,我理解的意思是,传入的请求将按照文件顺序对照指令进行检查。

所以...我取出了其他文件,一切都正常。

相关内容