0

我正在尝试通过现有的 .htaccess 文件重写指向我的自定义管理系统的传入 URI,该文件已经为我的站点的公共端维护了重写。

问题是无论我做什么,RewriteRule 都会继续执行。这是我目前正在使用的代码。

RewriteCond %{REQUEST_URI} !^/myadmin/
RewriteRule ^(([a-z]{2})(-[a-z]{2})?)(/([a-z0-9-\./]*))?$ /index.php?lng=$1&tpl=$4 [QSA,L,NC]

RewriteCond %{REQUEST_URI} ^/myadmin/
RewriteRule ^myadmin/(([a-z]{2})(-[a-z]{2})?)(/([a-z0-9-\./]*))?$ /myadmin/index.php?vlng=$1&tpl=$4 [QSA,L,NC]

如果我打电话

abc.com/myadmin/

我只为我的公共方面更新的 cookie 正在更新,当我尝试访问我的管理区域的 URI 时,我似乎无法阻止第一个条件运行。

谁能告诉我一个更好的方法来做到这一点?

4

1 回答 1

0

好的,我发现了问题,部分原因是我假设我的 Chrome 浏览器中的 Clear Cache 扩展程序一次只能在一个选项卡上工作,并且该扩展程序中的默认设置会在激活扩展程序后自动重新加载所有选项卡

像大多数开发人员一样,在开发访问我的站点、开发工具和技术资源的测试区域时,我在任何给定时刻都会在浏览器中打开 5-10 个选项卡。当我处理代码时,我通常会亲自手动完成所有缓存清理,这样我就知道它真的完成了,在这种情况下,我选择在我的 Chrome 浏览器中添加一个名为“Clear Cache”的新扩展来帮助我处理这个问题快一点,因为我做了很多小改动,每次都需要进行干净的测试。我没有意识到的是,当您激活扩展程序时,它还会清除所有其他选项卡的缓存。我也没有注意到设置为在执行清洁后自动重新加载它们的默认设置。因为它也没有

总结一下,当我在我的网站上工作时,在一个选项卡中测试对我的管理区域的更改我一直看到只能来自我网站的公共方面的 cookie 更新,这让我一直认为我的 htaccess 更改仍然有问题. 我意识到,经过两天的故障排除后,我添加的方便的花花公子扩展程序实际上是在不让我知道的情况下重新加载浏览器中的所有选项卡,并且所有其他调用负责持续返回可能的 cookie只能由我的网站的公共方面生成,这让我很困惑。在此之后,我将再次手动清除我的缓存。

于 2013-08-08T20:04:36.987 回答