2011-10-12 79 views
16

我想調試一個.htaccess文件。 FireFox保持緩存重定向,我無法繞過它們。通常我會按Ctrl + F5,但因爲它已經將我重定向到另一個頁面,只刷新我發送的頁面,而不是我輸入的URL。有沒有辦法強制刷新一個url?Apache - 如何禁用瀏覽器緩存,同時調試htaccess

下面是一個例子:

  • 重定向到example.com/hi example.com/hello,測試在Firefox和它的作品
  • 從的.htaccess
  • 類型example.com/刪除此行喜在Firefox中,它仍然重定向到example.com/hello
  • 類型example.com/hi在Chrome中,它不會重定向

這就是爲什麼餘噸眨眼這是一個瀏覽器緩存問題,而不是服務器緩存。

編輯:這似乎是特定於FireFox,快速解決方案是使用Chrome代替。一小時後緩存過期,嘗試調試時太長。

回答

11

如果您使用RewriteRule,只需使用R而不是R = 301。出於其他目的,每當您更改重定向時,您都必須清除瀏覽器緩存。 (如果您不知道如何清除瀏覽器緩存,請使用Google搜索提供快速簡單的答案 - 或隨時發表評論,我會幫您解決。)

簡而言之,嘗試儘可能避免301s,直到你的重定向正常工作。如果無法避免,請準備好定期清除瀏覽器緩存。

+0

我不認爲這真的回答了這個問題,我遇到了與Firefox相同的問題,它似乎緩存了htaccess文件,但無論我清除了多少次緩存,它都不會使用我的最新版本進行刷新。目前的解決方案是使用Chrome。 –

+2

瀏覽器不緩存.htaccess文件(因爲他們從來沒有看到它們),但他們做緩存重定向。絕對沒有理由適當的302重定向不應該按預期工作,除非這實際上是一個Firefox錯誤(在這種情況下,你應該與他們一起提交一張票)。 –

+0

實際需要301時,將其暫時更改爲302可能會在您完成測試時被遺忘。此外,清除瀏覽器緩存完全可能。 – Lode

0

更好嘗試刷新我的緩存無數次,我決定以清除餅乾我的網站後,我不知道爲什麼或如何而是清除它適合我。也許這是Magento特有的,但可能更一般。

3

在谷歌瀏覽器,使用 「隱身」 模式下打開一個新的標籤:

CTRL-SHIFT-N

調試非常有用的。

10

清除Firefox的網絡緩存適用於我。也適用於301重定向。

首選項/選項>高級>網絡>緩存的網頁內容。

Clear network cache in Firefox preferences

https://support.mozilla.org/en-US/kb/how-clear-firefox-cache

+0

非常感謝,爲我效勞 –

+0

這也適用於我。我們在.htaccess文件中犯了一個錯誤,並在循環中得到了301。 Chrome立即看到了變化,但FF沒有。說它不緩存.htaccess文件是正確的,但FF似乎得到它的內褲扭曲。 –

1

我認爲這是值得權衡這裏,以防萬一我的經驗可以幫助任何人。我經常在本地機器上的開發和生產分支之間來回切換。開發分支是我的本地環境,生產分支是爲我的遠程服務器。這兩個環境之間的唯一區別是.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] 

然而,這種重寫規則不適合我的地方的環境中工作,因爲URL的結構。所以在我的本地版本的.htaccess中,我註釋掉了重寫規則。

我注意到的是,Chrome似乎並沒有去我的本地服務器獲取最新的.htaccess文件。這顯然緩存重寫,因爲當我從我的分公司生產切換到我的開發分支我得到的東西看起來是這樣的:

www.www-local.myurl.local 

如果我使用Safari瀏覽器,我得到了正確的網址:

www-local.myurl.local 

爲了解決這個Chrome問題,我去了Developer Tools> Settings> General>並選中「Disable cache(DevTools is open)」

這個選中後,我只需打開Dev Tools並重新加載即可獲取當前的.htaccess。

3

強制清晰的htaccess /重定向緩存在谷歌瀏覽器

  1. 進入設置>高級>隱私>清除瀏覽數據
  2. 選擇「網頁快照圖片和文件」
  3. 點擊清除瀏覽數據

您的頁面現在應該加載新的htaccess設置。

0

在Firefox中打開開發人員工具欄選項命令I。然後點擊設置(這是一個小齒輪圖標)和高級設置旁邊打鉤勾選禁用HTTP緩存(當工具箱打開時)。這爲我做了詭計。