ham*_*boy 22 apache .htaccess firefox caching
我正在尝试调试.htaccess文件.FireFox保持缓存重定向,我无法绕过它们.通常我会按Ctrl + F5,但因为它已经将我重定向到另一个页面,只刷新我发送的页面而不是我输入的URL.有没有办法强制刷新网址?
这是一个例子:
这就是为什么我认为这是一个浏览器缓存问题,而不是服务器缓存.
编辑:这似乎是FireFox特有的,快速解决方案是使用Chrome代替.缓存在一小时后过期,这在尝试调试时太长了.
Dan*_*sco 14
如果您使用的是RewriteRule,只需使用R而不是R = 301.出于其他目的,您必须在更改重定向时清除浏览器缓存.(如果你不知道如何清除你的浏览器缓存,谷歌搜索方法应该提供一个快速简单的答案 - 或者随意评论,我会帮助你.)
简而言之,尽可能避免使用301,直到您的重定向正常工作为止.如果您无法避免它们,请准备好定期清除浏览器缓存.
Lod*_*ode 10
清除Firefox的网络缓存对我有用.也适用于301重定向.
首选项/选项>高级>网络>缓存的Web内容.

请参阅https://support.mozilla.org/en-US/kb/how-clear-firefox-cache
我认为值得权衡一下,以防我的经验对任何人有所帮助。我经常在本地机器上的开发和生产分支之间来回切换。开发分支是我的本地环境,生产分支是我的远程服务器。两种环境之间的唯一区别是 .htaccess 文件。我的远程服务器需要重写规则,以防有人没有在 URL 前输入“www”:
# If www is missing from the beginning of the URL
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
但是,由于 URL 结构,此重写规则不适用于我的本地环境。所以在我的本地版本的 .htaccess 中,我注释掉了重写规则。
我注意到 Chrome 似乎并没有每次都去我的本地服务器获取最新的 .htaccess 文件。这显然是缓存重写,因为当我从我的生产分支切换到我的开发分支时,我得到如下所示的内容:
www.www-local.myurl.local
Run Code Online (Sandbox Code Playgroud)
如果我使用 Safari,我会得到正确的 URL:
www-local.myurl.local
Run Code Online (Sandbox Code Playgroud)
为了解决这个 Chrome 问题,我转到了开发者工具 > 设置 > 常规 > 并选中“禁用缓存(DevTools 打开时)”
选中此项后,我只需要打开 Dev Tools 并重新加载即可获取当前的 .htaccess。
要在Google Chrome中强制清除htaccess /重定向缓存:
现在,您的页面应加载新的htaccess设置。
| 归档时间: |
|
| 查看次数: |
38637 次 |
| 最近记录: |