gpt4 book ai didi

.htaccess - mod_rewrite 在大写目录上失败

转载 作者:行者123 更新时间:2023-12-02 03:53:31 25 4
gpt4 key购买 nike

我在 .htaccess 文件中有一个非常基本的 mod_rewrite,我上次查看它时确定它工作正常,但现在它对 REQUEST_URI 的情况做了奇怪的事情。它的预期目的是将子域重写到给定文件,将子域作为 bnurl 的 php var 传递。这是我的代码:

RewriteCond %{REQUEST_URI}= "RSDEV/location/" [NC]  
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)\.mydomain\.co\.uk(:80)? [NC]
RewriteRule ^RSDEV/location/$ RSDEV/newmain.php?bnurl=%1&accesstype=new [NC,L]

现在,在我的网络浏览器中输入 joebloggs.mydomain.co.uk/RSDEV/location/会返回响应“在此服务器上找不到请求的 URL/RSDEV/location/”,这是正确的陈述,因为/RSDEV/location/不是真正的目录,但为什么没有像预期的那样重写为 RSDEV/newmain.php?bnurl=joebloggs&accesstype=new?

现在,真正奇怪的是,如果我在浏览器中输入 joebloggs.mydomain.co.uk/rsdev/location/(注意 rsdev 现在是小写),它会按预期正确重写。脚本 newmain.php 位于目录 RSDEV(大写)中,因此如果它要失败,我预计它会以小写 rsdev 的相反方式失败。

如您所见,我在每一行上都有 [NC]。这是我的 mod_rewrite 代码失败还是其他一些神秘的服务器力量让我整晚都睡不着?

最佳答案

摆脱线:

RewriteCond %{REQUEST_URI}= "RSDEV/location/" [NC]  

检查已经在重写规则的模式中进行。不仅如此,= 连接到 %{REQUEST_URI} 变量,因此字符串以 = 结束(它应该紧挨着图案)。

关于.htaccess - mod_rewrite 在大写目录上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13577303/

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