gpt4 book ai didi

apache - 为什么这个 htaccess 以重定向循环结束?

转载 作者:行者123 更新时间:2023-12-02 09:59:41 25 4
gpt4 key购买 nike

我得到了以下 htaccess,最终导致重定向循环:

RewriteEngine On

RewriteCond %{REQUEST_URI} !^/int(.*)$
RewriteRule ^(.*)$ /int [R,L]

RewriteRule . index.php [L]

我添加了第一条规则,将根请求重定向到特定的子文件夹。第二条规则来自 WordPress(以及其他)

我不明白为什么这会以重定向循环结束。第二次重写是否会触发另一个请求,以便再次检查htaccess? Thant 会解释这个循环。

谢谢

最佳答案

您的每次重写都会创建一个新请求,该请求将通过 .htaccess 重新处理。您正在将任何不以 /int(.*) 开头的内容重写为 /int。但是,以 /int 开头的任何内容都会跳过第一个重写条件并被重写为 index.php。然后 index.php 被重写为 /int,因为它不是以 /int(.*) 开头。然后 /int 被重写为 index.php...然后...然后...

顺便说一句:您可以通过添加第二个重写条件来防止无限循环,以便在 REQUEST_URI/index.php 时不触发第一个重写规则

RewriteCond %{REQUEST_URI} !^/index.php$
RewriteCond %{REQUEST_URI} !^/int(.*)$
RewriteRule ^(.*)$ /int [R,L]

如果忘记在第一个重写条件中是否需要前导斜杠...请尝试两种方法。

关于apache - 为什么这个 htaccess 以重定向循环结束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22815140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com