新手村導讀 - 4: Http回應狀態碼

閱讀時間約 4 分鐘

這篇就來介紹一下一般網頁的網頁回應碼,以官方正式的狀態碼來分類的話,可以分為五大類,以下就來一一介紹比較常見到的狀態碼吧~

1XX狀態碼

這類狀態碼代表請求已被接受,需要繼續處理。這類回應是臨時回應,只包含狀態行和某些可選的回應頭資訊,並以空行結束。由於此狀態並非最終的回應,因此比較少會碰到或實際使用到。

2XX狀態碼

這類別代表請求已成功被伺服器接收,算是一般來說最常見的狀態類別。以下是比較常見的狀態碼:

200 OK 代表請求已成功接收並且被回應,而回應內容則取決請求方法與該功能本身。

202 Accepted 代表請求已成功接收,但尚未被處理。最終該請求不一定會被執行。

204 No Content 代表請求已成功接收並且被處理,而此種狀態碼代表不需要返回任何內容。此種狀態碼常見於 POST、PATCH 等請求方法。

3XX狀態碼

這類狀態碼代表需要客戶端採取進一步的操作才能完成請求,現在這些狀態碼大多用來重新導向。

301 Moved Permanently 代表被請求的資源已永久移動到新位置,並且重新導向到新的網址。以SEO的觀點來看,301 的轉址會一併把頁面權重、流量等資料導向新網址。

302 Moved Temporarily 代表被請求的資源已暫時移動到新位置,並且重新導向到新的網址。以SEO的觀點來看,302 的轉址僅會把流量等資料導向新網址,因此在搜尋引擎中仍會有舊頁面的頁面權重/排名。

4XX狀態碼

這類狀態碼代表客戶端發生了錯誤,使得伺服器無法正確處理,常見的理由像是 token 驗證未通過、未帶入指定 header 內容等。

400 Bad Request 此類型為明顯的客戶端錯誤,例如格式錯誤、請求語法錯誤等。

401 Unauthorized 此類型為未認證錯誤,代表沒有帶入相應的資源去辨別使用者的身分,導致伺服器無法給予要求的資源。

403 Forbidden 此類型為身分驗證錯誤,代表沒有相應的權限去請求資源,與 401 不同的是, 403 有確實給予身分的認證,只是該身分無權限而已。

404 Not Found 此類型應該為最常見的幾種錯誤之一了,由於有太多的情況都可能產生 404 錯誤,因此比較難去準確辨別產生問題的位置。常見造成 404 的理由包含 url 錯誤、帶入的請求參數有問題,甚至是該客戶所請求資源不知為何不見了,只能說產生的理由千奇百怪。

405 Method Not Allowed 此類型代表請求行中指定的請求方法不能被用於請求相應的資源。簡單來說,你的請求方法用錯了。可能它限制只能用 Get 方法,但你卻用了 Post,因此在前期解析時就被擋了下來。

5XX狀態碼

這類別表示伺服器無法完成有效的請求,有可能是發生錯誤、處理佇列過長或是其他異常狀況的發生。

500 Internal Server Error 此類型應該也為最常見的幾種錯誤之一,是 5XX 系列中最通用錯誤訊息,只要伺服器在過程中發生預料之外的事情,預設都會拋出 500 錯誤。簡單來說,通常是程式寫錯了。

502 Bad Gateway 此類型代表伺服器間溝通時出現問題,例如防火牆阻擋、公司網域阻擋,或是單純的伺服器故障。

504 Gateway Timeout 大部分狀況下,伺服器會設定接收與回傳之間的上限秒數,當達到上限時間而程式還在處理時,伺服器就會先回傳504。一般來說,除了上限時間設定太短之外,也可能是因為有無限迴圈、 SQL 指令效能太差或是有其他潛在問題才會導致 504 狀態。

以上就是這次介紹的比較常見的 http status ,感謝您的收看!


參考資料:

  1. https://developer.mozilla.org/zh-TW/docs/Web/HTTP/Status
  2. https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
  3. https://developers.google.com/search/docs/crawling-indexing/301-redirects?hl=zh-tw
  4. https://www.tsg.com.tw/blog-detail4-208-0-502.htm
2會員
10內容數
test
留言0
查看全部
發表第一個留言支持創作者!
林柏宇的沙龍 的其他內容
在這篇文章中,我們將介紹工作與以前念書時期在開發流程上的差異,並深入瞭解CI/CD、Travis CI以及加解密的應用。 CI/CD是自動化的軟體開發實踐,而加解密則是保護機密資料安全的重要技術。
介紹工作後幾個常見的小問題,包括寫 Log 的好習慣、本地印出錯誤或過程、PHPCS 工具、變數儲存於設定檔、避免魔術數字、程式碼靜態分析與動態分析。
這篇文章介紹了面試時以及開始工作後可能會遇到的問題,包括物件導向OOP、SOLID 設計原則、測試方式,以及 Cookie、Session 與 Cache 的相似處與不同處。提供了豐富的相關資訊。
在這篇文章中,我們將介紹工作與以前念書時期在開發流程上的差異,並深入瞭解CI/CD、Travis CI以及加解密的應用。 CI/CD是自動化的軟體開發實踐,而加解密則是保護機密資料安全的重要技術。
介紹工作後幾個常見的小問題,包括寫 Log 的好習慣、本地印出錯誤或過程、PHPCS 工具、變數儲存於設定檔、避免魔術數字、程式碼靜態分析與動態分析。
這篇文章介紹了面試時以及開始工作後可能會遇到的問題,包括物件導向OOP、SOLID 設計原則、測試方式,以及 Cookie、Session 與 Cache 的相似處與不同處。提供了豐富的相關資訊。
你可能也想看
Thumbnail
1.加權指數與櫃買指數 週五的加權指數在非農就業數據開出來後,雖稍微低於預期,但指數仍向上噴出,在美股開盤後於21500形成一個爆量假突破後急轉直下,就一路收至最低。 台股方面走勢需觀察週一在斷頭潮出現後,週二或週三開始有無買單進場支撐,在沒有明確的反轉訊號形成前,小夥伴盡量不要貿然抄底,或是追空
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
在這一章中,我們探討了 PHP 中的函數,包括函數的基本結構、不同的函數定義方式(如函數聲明、函數表達式、箭頭函數和匿名函數)以及如何呼叫函數。我們還討論了函數的參數處理方式,包括單個參數、多個參數、預設參數值和剩餘參數。此外,我們還介紹了函數的返回值,包括返回單個值、返回物件和返回函數的情況。
Thumbnail
※ 原本狀態:伺服器渲染 這是 MVC 架構下的 request / response 示意圖,在這張圖呈現的架構裡,畫面和資料都由同一個架構處理。 伺服器渲染流程: 瀏覽器針對特定網址送出請求。 路由器解析請求後,轉接給對應的 controller。 controller 按照要求,透過
Thumbnail
本文介紹了在網站開發中如何運用狀態機的原則和設計方法。通過具體案例分析,以及狀態和數據的區分,詳細介紹了狀態機的設計原則和應用。讀者可以通過本文瞭解如何將狀態機應用於實際的網站開發中。
Thumbnail
在網路速度有限的情況下,依序記錄不斷產生的資訊,能統計使用者在頁面上操作了哪些功能。
Thumbnail
當我們架好站、WebService測試完,接著就是測試區域網路連線啦~
Thumbnail
Request內容 package main import ( "fmt" "log" "net/http" "strings" ) func request(w http.ResponseWriter, r *http.Request) { //這些資訊是輸出到伺服器端的列印訊息
Thumbnail
資訊回應(Informational responses) 100~199 100(Continue):伺服器在等待用戶端繼續請求。 102(Processing):伺服器收到請求正在處理中。 成功回應(Successful responses) 200~299 200(OK):請求
Thumbnail
Accept:用戶端能夠接收的內容類型。 Accept: text/plain, text/html Accept-Charset:瀏覽器可以接受的字元編碼集。 Accept-Charset: utf8 Accept-Encoding:指定瀏覽器可以支援的web伺服器返回內容壓縮編碼
Thumbnail
1.加權指數與櫃買指數 週五的加權指數在非農就業數據開出來後,雖稍微低於預期,但指數仍向上噴出,在美股開盤後於21500形成一個爆量假突破後急轉直下,就一路收至最低。 台股方面走勢需觀察週一在斷頭潮出現後,週二或週三開始有無買單進場支撐,在沒有明確的反轉訊號形成前,小夥伴盡量不要貿然抄底,或是追空
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
在這一章中,我們探討了 PHP 中的函數,包括函數的基本結構、不同的函數定義方式(如函數聲明、函數表達式、箭頭函數和匿名函數)以及如何呼叫函數。我們還討論了函數的參數處理方式,包括單個參數、多個參數、預設參數值和剩餘參數。此外,我們還介紹了函數的返回值,包括返回單個值、返回物件和返回函數的情況。
Thumbnail
※ 原本狀態:伺服器渲染 這是 MVC 架構下的 request / response 示意圖,在這張圖呈現的架構裡,畫面和資料都由同一個架構處理。 伺服器渲染流程: 瀏覽器針對特定網址送出請求。 路由器解析請求後,轉接給對應的 controller。 controller 按照要求,透過
Thumbnail
本文介紹了在網站開發中如何運用狀態機的原則和設計方法。通過具體案例分析,以及狀態和數據的區分,詳細介紹了狀態機的設計原則和應用。讀者可以通過本文瞭解如何將狀態機應用於實際的網站開發中。
Thumbnail
在網路速度有限的情況下,依序記錄不斷產生的資訊,能統計使用者在頁面上操作了哪些功能。
Thumbnail
當我們架好站、WebService測試完,接著就是測試區域網路連線啦~
Thumbnail
Request內容 package main import ( "fmt" "log" "net/http" "strings" ) func request(w http.ResponseWriter, r *http.Request) { //這些資訊是輸出到伺服器端的列印訊息
Thumbnail
資訊回應(Informational responses) 100~199 100(Continue):伺服器在等待用戶端繼續請求。 102(Processing):伺服器收到請求正在處理中。 成功回應(Successful responses) 200~299 200(OK):請求
Thumbnail
Accept:用戶端能夠接收的內容類型。 Accept: text/plain, text/html Accept-Charset:瀏覽器可以接受的字元編碼集。 Accept-Charset: utf8 Accept-Encoding:指定瀏覽器可以支援的web伺服器返回內容壓縮編碼