如何修復HTTP 304未修改狀態碼報錯

錯誤型別:
HTTP錯誤
錯誤名稱:
HTTP 304未修改状态码
英文名稱:
HTTP 304 not modified
錯誤描述:
从技术上讲,HTTP 304是重定向而不是实际错误。但是,它可以阻止您和其他访问者访问网页。

http-304

當您瀏覽網站時,您可能偶爾會遇到HTTP狀態程式碼,例如“HTTP 304 not modified.”。這通常會阻止您繼續訪問當前站點。WordPress站長可以採取一些簡單的步驟來解決該問題。

在這篇教學中,我們將解釋HTTP 304未修改狀態程式碼是什麼,並探討其一些常見原因。然後,詳細介紹可用於修復它的五個解決方案。

HTTP 304未修改狀態碼簡介

您可能會在訪問網站的時候遇到一些不同的HTTP錯誤程式碼。一些最常見的是301和302重定向,以及臭名昭著的404錯誤。您可能不時遇到的另一個問題是HTTP 304,也稱為“304未修改”狀態程式碼。

從技術上講,HTTP 304是重定向而不是實際錯誤。但是,它可以阻止您和其他訪問者訪問網頁。

每次從瀏覽器訪問網站時都會傳送狀態程式碼。但是,這通常發生在後臺。如果您確實看到了狀態程式碼,則表示出現問題。

通常,如果您看到此狀態程式碼,則表示您的瀏覽器和網站無法通訊。更具體地說,它表明資訊沒有正確地從您的瀏覽器傳送到站點的伺服器,這會阻止您看到您嘗試訪問的網頁。

此程式碼被稱為“未修改”的原因是您嘗試訪問的站點自上次訪問以來沒有更改。瀏覽器快取將網頁中的資料儲存在您的本地裝置上,因此您不必重複下載相同的資訊。

如果您的瀏覽器收到HTTP 304未修改程式碼,它將嘗試顯示已儲存或快取的URL版本。不幸的是,這有時可能會阻止您(或其他使用者)完全檢視該頁面,因為資訊已過時。

HTTP 304未修改的常見原因

在我們開始對此問題進行故障排除之前,瞭解它可能發生的一些原因可能會有所幫助。HTTP 304的一些常見原因值得了解。

一種可能性是您的計算機上有惡意軟體或病毒,這會破壞您的瀏覽器,更具體地說是其快取機制。另一個可能的原因是您的瀏覽器當前包含損壞的檔案,使其無法成功儲存和更新資料。

第三個常見原因是第三方應用程式或軟體的問題。例如,您可能安裝了現在導致瀏覽體驗出現問題的工具或瀏覽器擴充套件。

如何修復HTTP 304未修改狀態碼(5種方法)

現在您對這個狀態碼是什麼有了更多的瞭解,讓我們來看看如何修復它。以下是解決未修改的 HTTP 304的五種潛在解決方案。

1. 清除瀏覽器快取

正如我們之前提到的,快取中斷是HTTP 304的常見原因。因此,您可以採取的解決此問題的第一個也是最簡單的步驟是清除瀏覽器快取。

如果您使用的是Google Chrome,則可以通過導航到新標籤頁中的選單圖示(右上角的三個垂直點)來執行此操作。然後導航到更多工具>清除瀏覽資料

clear-browsing-data

在接下來開啟的視窗中,確認所有時間時間範圍下拉選單的選定選項。接下來,確保選擇了所有三個選項(瀏覽歷史記錄Cookie和其他站點資料以及快取的影象和檔案):

clear-data

之後,單擊清除資料按鈕。完成後,重新整理瀏覽器並再次嘗試訪問該網站。

如果您使用的是Chrome以外的瀏覽器,則清除快取的步驟會略有不同。

2. 暫時禁用您的瀏覽器擴充套件

第三方工具或瀏覽器擴充套件可能是HTTP 304狀態程式碼的罪魁禍首。因此,您可能想嘗試暫時禁用這些工具,以檢視是否可以查明任何中斷您的連線的工具。

為此,您可以導航到新的瀏覽器選項卡,單擊選單圖示,然後瀏覽到Settings (設定)> Extensions(擴充套件程式)

chrome-settings-extensions

擴充套件頁面上,您可以切換開關以暫時禁用應用程式,或單擊刪除按鈕將其完全刪除:

disable-chrome-extension

我們建議一個一個地關閉每個擴充套件,在每個擴充套件之後檢查站點,看看它現在是否可以訪問。如果關閉這些工具之一可以解決HTTP 304問題,您將需要完全刪除該載入項(因為它可能已被感染)並在必要時找到替代品。

3. 進行惡意軟體掃描

另一個可能導致HTTP 304程式碼的問題是您使用的是過時版本的 Chrome。或者,可能有惡意軟體或有問題的軟體損壞了您的瀏覽器。這就是我們建議在您的網站上執行惡意軟體掃描並使用Chrome的內建清理工具的原因。

首先,最好確保您使用的是最新版本的Chrome(如果不是,請更新)。為此,您可以導航到設定選單,然後單擊“幫助” >“關於 Google Chrome”

about-chrome

瀏覽器將開始檢查是否有可用更新。如果有,您可以點選重新啟動來更新Chrome。

接下來,您可以在瀏覽器的搜尋欄中輸入“chrome://settings/cleanup”,然後按Enter鍵:

clean-up-computer

您的瀏覽器將開始檢查任何有害軟體。如果存在,您可以完全禁用或刪除它,然後檢查HTTP 304錯誤是否仍然存在。

最後,您可能還想嘗試執行已安裝在計算機上的任何惡意軟體掃描程式。無論您使用何種作業系統 (OS),我們都建議您這樣做。但是,如果您使用的是 Firefox、Safari或除Chrome之外的其他沒有內建清理工具的瀏覽器,這一點尤其重要。

4. 重置DNS和TCP/IP設定

如果您仍然遇到HTTP 304狀態程式碼,您可以嘗試的下一步是重新整理您的DNS。為此,您可以在瀏覽器的搜尋欄中輸入“chrome://net-internals/#dns”,然後按Enter鍵:

clear-host-cache

接下來,單擊位於DNS選項卡下的清除主機快取按鈕。完成後,嘗試重新啟動瀏覽器以重新訪問URL。

如果這不起作用,您也可以嘗試切換到Google 公共 DNS。您可以通過在Windows搜尋欄中鍵入“ncpa.cpl”,然後單擊“確定”按鈕來實現。

在開啟的網路連線視窗中,右鍵單擊您當前的網路連線並選擇屬性

network-connections-properties-e1625198198505

接下來,雙擊Internet Protocol Version 4。在開啟的視窗中,單擊“使用以下DNS伺服器地址”選項:

dns-server-addresses

首選值欄位旁邊,輸入“8.8.8.8”。接下來,在替代欄位中輸入“8.8.4.4” 。完成後,單擊OK。重新啟動計算機後,再次嘗試訪問該站點。

如果您使用的是macOS,則可以通過導航到Apple > System > Preferences > Network來更改DNS設定接下來,單擊高階>DNS

macos-dns-settings

之後,您可以選擇IPv4 或 IPv6 地址旁邊的 (+) 圖示。您可以輸入與上述相同的Google Public DNS值,然後單擊OK

5. 檢查伺服器配置檔案

HTTP 304可能是客戶端問題(您的瀏覽器)或伺服器端問題(您的網站)。如果您擁有產生HTTP 304狀態程式碼的站點,您可以嘗試的最終修復是檢查您的伺服器配置檔案。這樣做的步驟將根據您的伺服器是使用Apache還是 NGINX而有所不同。

如果您在 Apache 上執行,您的伺服器配置檔案將被稱為.htaccess,“超文字訪問”的縮寫 它可能位於您站點的根目錄中,通常在public_html資料夾中。.htaccess檔案是負責處理各種請求,包括重定向。

您可以通過FileZilla等檔案傳輸協議 (FTP) 客戶端或您的網路主機的檔案管理器訪問此檔案。找到並開啟r .htaccess檔案後,您將需要查詢標有“mod_cache”的部分。它應該是這樣的:

 

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
LoadModule cache_module modules/mod_cache.so
<IfModule mod_cache.c>
LoadModule cache_disk_module modules/mod_cache_disk.so
<IfModule mod_cache_disk.c>
CacheRoot "c:/cacheroot"
CacheEnable disk "/"
CacheDirLevels 5
CacheDirLength 3
</IfModule>
# When acting as a proxy, don't cache the list of security updates
CacheDisable "http://security.update.server/update-list/"
LoadModule cache_module modules/mod_cache.so <IfModule mod_cache.c> LoadModule cache_disk_module modules/mod_cache_disk.so <IfModule mod_cache_disk.c> CacheRoot "c:/cacheroot" CacheEnable disk "/" CacheDirLevels 5 CacheDirLength 3 </IfModule> # When acting as a proxy, don't cache the list of security updates CacheDisable "http://security.update.server/update-list/"
LoadModule cache_module modules/mod_cache.so
<IfModule mod_cache.c>
    LoadModule cache_disk_module modules/mod_cache_disk.so
    <IfModule mod_cache_disk.c>
        CacheRoot "c:/cacheroot"
        CacheEnable disk  "/"
        CacheDirLevels 5
        CacheDirLength 3
    </IfModule>
 
    # When acting as a proxy, don't cache the list of security updates
    CacheDisable "http://security.update.server/update-list/"

您可以通過註釋掉程式碼來暫時“關閉它”,而不是完全刪除此部分。為此,請在每行前面放置一個“#”。

如果您使用NGINX,您需要查詢nginx.config檔案。但是,由於NGINX通常帶有內建快取,因此此配置檔案作為HTTP 304 程式碼的來源並不常見。

小結

當您嘗試訪問網站時遇到錯誤和重定向訊息可能會非常令人沮喪。但是,瞭解某些狀態程式碼的含義可以幫助您縮小問題的範圍,從而開始故障排除和解決問題。

例如,如果您遇到HTTP 304狀態程式碼,您可能會認為這是瀏覽器設定或DNS配置的問題。正如我們所討論的,您可以嘗試解決五個潛在的解決方案:

  1. 清除瀏覽器快取。
  2. 暫時禁用您的瀏覽器擴充套件。
  3. 執行惡意軟體掃描。
  4. 重新整理您的DNS並重置您的TCP/IP設定。
  5. 檢查您的伺服器配置檔案。

評論留言