ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HTTP ์ƒํƒœ์ฝ”๋“œ ์ •๋ฆฌ
    Server 2022. 12. 23. 23:31

     

    ๐Ÿ“Œ ์ฐธ๊ณ 
    - https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
    - https://www.rfc-editor.org/rfc/rfc2616#page-39
    - https://evan-moon.github.io/2020/03/15/about-http-status-code/#500%EB%B2%88%EB%8C%80

    ๋ถ„๋ฅ˜

    ์„œ๋ฒ„๊ฐ€ ๊ฒŒ์ดํŠธ์›จ์ด ์—ญํ• ์„ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ํ•œ ์„œ๋ฒ„๊ฐ€ ์—‘์„ธ์Šคํ•˜๊ณ  ์žˆ๋Š” ๋‹ค๋ฅธ ์„œ๋ฒ„์— ์ ์‹œ์— ์‘๋‹ต์„ ๋ฐ›์ง€ ๋ชปํ–ˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค.

    HTTP ์‘๋‹ต ์ƒํƒœ์ฝ”๋“œ๋Š” ํŠน์ • HTTP ์š”์ฒญ์ด ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋˜์—ˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ๋ฉฐ ํฌ๊ฒŒ 5๊ฐœ์˜ ๊ทธ๋ฃน์œผ๋กœ ๋‚˜๋ˆ„์–ด์ง„๋‹ค.

    ์ƒํƒœ์ฝ”๋“œ๋Š” 3์ž๋ฆฌ ์ˆซ์ž๋กœ, 100๋ฒˆ๋Œ€์—์„œ 500๋ฒˆ๋Œ€๊นŒ์ง€ ์žˆ๋‹ค. ์ฃผ๋กœ 200๋ฒˆ๋Œ€์™€ 400๋ฒˆ๋Œ€, 500๋ฒˆ๋Œ€๋ฅผ ๋ณด๊ฒŒ ๋œ๋‹ค.

    • 1xx (informational response) : ์š”์ฒญ์„ ๋ฐ›์•˜์œผ๋ฉฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ณ„์† ์ง„ํ–‰ํ•œ๋‹ค๋Š” ์ƒํƒœ์ฝ”๋“œ
    • 2xx (Successful response) : ์š”์ฒญ์„ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐ›์•˜์œผ๋ฉฐ(received), ์ดํ•ดํ–ˆ๊ณ (understood), ๋ฐ›์•„๋“ค์—ฌ์กŒ๋‹ค๋Š” ์ƒํƒœ์ฝ”๋“œ(accepted)
    • 3xx (Redirection messages) : ์š”์ฒญ์„ ์™„๋ฃŒํ•˜๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€์ ์ธ ์•ก์…˜์ด ๋ฐ˜๋“œ์‹œ ์ˆ˜ํ–‰๋˜์–ด์ ธ์•ผ ํ•œ๋‹ค๋Š” ์ƒํƒœ์ฝ”๋“œ
    • 4xx (Client error response) : ์‘๋‹ต์ด ์ž˜๋ชป๋œ ๋ฌธ๋ฒ•์„ ํฌํ•จํ•˜๊ณ  ์žˆ๊ฑฐ๋‚˜ ์ˆ˜ํ–‰๋  ์ˆ˜ ์—†๋Š” ์š”์ฒญ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ƒํƒœ์ฝ”๋“œ
    • 5xx (Server error response) : ๋ช…๋ฐฑํžˆ ์œ ํšจํ•œ ์š”์ฒญ์„ ์„œ๋ฒ„๊ฐ€ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์„ ๋•Œ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ƒํƒœ์ฝ”๋“œ

    1xx : Information response

    ์ด ๊ฒฝ์šฐ, ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ๋ฐ›์•˜์œผ๋ฉฐ ์„œ๋ฒ„์— ์—ฐ๊ฒฐ๋œ ํด๋ผ์ด์–ธํŠธ๋Š” ์ž‘์—…์„ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ผ๋Š” ์˜๋ฏธ์ด๋‹ค. HTTP 1.0์—์„œ ์ง€์›ํ•˜์ง€๋Š” ์•Š๋Š” ์ƒํƒœ์ฝ”๋“œ์ด๋‹ค.

    --> ์ž˜ ์“ฐ์ด์ง€๋Š” ์•Š๋Š” ๊ฒƒ ๊ฐ™๋‹ค...?

    100 Continue

    ์ด ์‘๋‹ต์€ ์ž„์‹œ์ ์ธ ์‘๋‹ต์ด๋ฉฐ, ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์š”์ฒญ์˜ ์‹œ์ž‘๋ถ€๋ถ„์„ ๋ฐ›์•˜๊ณ  ์•„์ง ์„œ๋ฒ„์— ์˜ํ•ด ๊ฑฐ์ ˆ๋˜์ง€๋Š” ์•Š์•˜์Œ์„ ์•Œ๋ฆด ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ํด๋ผ์ด์–ธํŠธ๋Š” ๋ฐ˜๋“œ์‹œ ๋‚˜๋จธ์ง€ ์š”์ฒญ์„ ๊ณ„์†ํ•ด์•ผ ํ•˜๋ฉฐ ๋˜๋Š” ์š”์ฒญ์ด ์ด๋ฏธ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด ์ด ์‘๋‹ต์„ ๋ฌด์‹œํ•ด๋„ ๋œ๋‹ค. ์„œ๋ฒ„๋Š” ๋ฐ˜๋“œ์‹œ ์ตœ์ข… ์‘๋‹ต์„ ์š”์ฒญ์ด ์™„๋ฃŒ๋œ ํ›„์— ๋ณด๋‚ด์•ผ๋งŒ ํ•œ๋‹ค.

    2xx : Successful response

    200 OK

    ์š”์ฒญ์ด ์„ฑ๊ณต์ ์œผ๋กœ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์„ฑ๊ณต์˜ ์˜๋ฏธ๋Š” HTTP ๋ฉ”์†Œ๋“œ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

    • GET: ๋ฆฌ์†Œ์Šค๋ฅผ ๋ถˆ๋Ÿฌ์™€์„œ ๋ฉ”์‹œ์ง€ ๋ฐ”๋””์— ์ „์†ก๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    • HEAD: ๊ฐœ์ฒด ํ•ด๋”๊ฐ€ ๋ฉ”์‹œ์ง€ ๋ฐ”๋””์— ์žˆ์Šต๋‹ˆ๋‹ค.
    • PUT ๋˜๋Š” POST: ์ˆ˜ํ–‰ ๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ฉ”์‹œ์ง€ ๋ฐ”๋””์— ์ „์†ก๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    • TRACE: ๋ฉ”์‹œ์ง€ ๋ฐ”๋””๋Š” ์„œ๋ฒ„์—์„œ ์ˆ˜์‹ ํ•œ ์š”์ฒญ ๋ฉ”์‹œ์ง€๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    201 Created

    ์š”์ฒญ์ด ์„ฑ๊ณต์ ์ด์—ˆ์œผ๋ฉฐ ๊ทธ ๊ฒฐ๊ณผ๋กœ ์ƒˆ๋กœ์šด ๋ฆฌ์†Œ์Šค๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ์Œ์„ ์•Œ๋ฆฌ๋Š” ์ƒํƒœ์ฝ”๋“œ. ๋ณดํ†ต POST์š”์ฒญ ๋˜๋Š” PUT ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ๋ณด๋‚ธ๋‹ค. ๋ณดํ†ต ํšŒ์›๊ฐ€์ž…๊ณผ ๊ฐ™์€ ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์ฝ”๋“œ๋กœ ๋งŽ์ด ์ผ๋‹ค.

    202 Accepted

    202(Accepted) ์ƒํƒœ ์ฝ”๋“œ๋Š” ์š”์ฒญ์ด ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์ˆ˜๋ฝ๋˜์—ˆ์ง€๋งŒ ์ฒ˜๋ฆฌ๊ฐ€ ์™„๋ฃŒ๋˜์ง€ ์•Š์•˜์Œ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์š”์ฒญ์ด ์‹ค์ œ๋กœ ์ฒ˜๋ฆฌ ๋  ๋•Œ ํ—ˆ์šฉ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์š”์ฒญ์ด ๊ฒฐ๊ตญ ์‹คํ–‰๋˜๊ฑฐ๋‚˜ ์‹คํ–‰๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๋œป์ด๋‹ค. HTTP์—๋Š” ๋น„๋™๊ธฐ ์ž‘์—…์—์„œ ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ๋ณด๋‚ด๋Š” ๊ธฐ๋Šฅ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์—, ์˜๋„์ ์œผ๋กœ ๋ชจํ˜ธํ•˜๊ฒŒ 202 ์‘๋‹ต์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์ด๋‹ค.

    ์ด๋Ÿฌํ•œ ์ƒํƒœ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ชฉ์ ์€ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์— ๋Œ€ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์™„๋ฃŒ ๋  ๋•Œ๊นŒ์ง€ ์„œ๋ฒ„์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ์˜ ์—ฐ๊ฒฐ์ด ์œ ์ง€๋  ํ•„์š”๊ฐ€ ์—†์ด, ์„œ๋ฒ„๊ฐ€ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค (์•„๋งˆ๋„ ํ•˜๋ฃจ์— ํ•œ ๋ฒˆ ์‹คํ–‰๋˜๋Š” ์ผ๊ด„ ์ฒ˜๋ฆฌ ์ง€ํ–ฅ ํ”„๋กœ์„ธ์Šค)์— ๋Œ€ํ•œ ์š”์ฒญ์„ ์ˆ˜๋ฝํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๊ธฐ  ์œ„ํ•ด์„œ๋ผ๊ณ  ํ•œ๋‹ค. ์ด ์‘๋‹ต๊ณผ ํ•จ๊ป˜ ์ „์†ก๋œ ํ‘œํ˜„์€ ์š”์ฒญ์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ์„ค๋ช…ํ•˜๊ณ  ์š”์ฒญ์ด ์–ธ์ œ ์ถฉ์กฑ๋ ์ง€์— ๋Œ€ํ•œ ์ถ”์ •์น˜๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๋ฅผ ์•Œ๋ ค์ฃผ์–ด์•ผ ํ•œ๋‹ค.

    ์•„์ง ์จ๋ณด์ง€๋Š” ์•Š์•˜๋‹ค.

    203 Non-Autoritative Inforamation

    ์š”์ฒญ์€ ์„ฑ๊ณต์ ์œผ๋กœ ์ˆ˜ํ–‰ ๋˜์—ˆ์œผ๋‚˜, ์š”์ฒญ์— ๋Œ€ํ•œ ๊ฒ€์ฆ์ด ๋˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•œ๋‹ค.

    204 No content

    ์š”์ฒญ์ด ์„ฑ๊ณต์ ์œผ๋กœ ์ˆ˜ํ–‰๋˜์—ˆ๊ณ , ์‘๋‹ต payload์— ๋ณด๋‚ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ์ฆ‰, ์š”์ฒญ๊ณผ ๊ด€๋ จ๋œ data๊ฐ€ ๊น”๋”ํžˆ ์‚ญ์ œ๋˜์—ˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ์ฃผ๋กœ DELETE ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ์‚ฌ์šฉํ–ˆ๋‹ค.

    3xx : Redirection message

    300๋ฒˆ๋Œ€ ์ƒํƒœ์ฝ”๋“œ๋Š” ๋ฆฌ๋‹ค์ด๋ ‰์…˜๊ณผ ๊ด€๋ จ๋˜์–ด ์žˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์˜ฎ๊ฒจ์กŒ๊ฑฐ๋‚˜ ์‚ญ์ œ๋˜์–ด์„œ ๋‹ค๋ฅธ url์„ ํ†ตํ•ด ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ ์„œ๋ฒ„๊ฐ€ ํ•ด๋‹น url์„ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ๊ฐ€๋Šฅํ•œ url๋กœ ์ „๋‹ฌํ•ด์ฃผ๊ณ ์ž ์‚ฌ์šฉํ•œ๋‹ค.

     

    301 Moved Permanetly (Redirect)

    ๋ธŒ๋ผ์šฐ์ €๋Š” ์ž์‹ ์˜ ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ 301์„ ๋ฐ›์œผ๋ฉด HTTPํ—ค๋”์— ์žˆ๋Š” Location ํ•„๋“œ์— ์žˆ๋Š” URL๋กœ ์ž๋™ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ํ•œ๋‹ค.

    ๋˜ํ•œ ๊ตฌ๊ธ€๊ณผ ๊ฐ™์€ ๊ฒ€์ƒ‰ ์—”์ง„์˜ ๋ด‡๋“ค์€ ํŠน์ • ํŽ˜์ด์ง€์— ์ ‘๊ทผํ–ˆ๋Š”๋ฐ ์‘๋‹ต์œผ๋กœ 301 ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ๋ฐ›์„ ๊ฒฝ์šฐ ์ž๋™์œผ๋กœ ํŽ˜์ด์ง€ ์ •๋ณด๋ฅผ ๊ฐฑ์‹ ํ•˜๊ธฐ๋„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, SEO(Search Engine Optimization) ๊ด€์ ์—์„œ๋„ ์ด ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.

    ์ด๋Ÿฐ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ ์„ค์ •์€ ๋ณดํ†ต ์„œ๋ฒ„ ์—”์ง„์˜ ์„ค์ • ํŒŒ์ผ ๋‚ด์—์„œ๋„ ํ•  ์ˆ˜ ์žˆ๊ณ , ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์—์„œ ์ง์ ‘ ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ๊ฒฝ์šฐ ์ด ์ƒํƒœ์ฝ”๋“œ๋Š” HTTP ํ”„๋กœํ† ์ฝœ๋กœ ์ ‘์†ํ•œ ์‚ฌ์šฉ์ž๋ฅผ HTTPS ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ด์•ผ๋งŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ํฌํŠธ๋กœ ๋ณด๋‚ด๋ฒ„๋ฆด ๋•Œ์—๋„ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.

    server {
        listen         80;
        server_name    evan.com;
        return         301 https://$host$request_uri;
    }
    
    server {
        listen         443 ssl;
        server_name    evan.com;
        ...
    }

    ์ด ๊ฒฝ์šฐ 80 ํฌํŠธ๋กœ ์ ‘์†ํ•œ ์‚ฌ์šฉ์ž๋ฅผ ๋ฐœ๊ฒฌํ•œ Nginx๋Š” HTTPS ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ด์•ผ๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” 443 ํฌํŠธ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ์‹œ์ผœ์„œ ํ•ด๋‹น ํ”„๋กœํ† ์ฝœ ์‚ฌ์šฉ์„ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ๋‹ค.

    304 Not Modified

    ๋ฆฌ์†Œ์Šค๊ฐ€ ์ˆ˜์ •๋˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ด์ „ ์š”์ฒญ๋•Œ์™€ ๋น„๊ตํ–ˆ์„ ๋•Œ, ์ „ํ˜€ ๋‹ฌ๋ผ์ง„ ์ ์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ๋”ฐ๋ผ์„œ, ํ•ด๋‹น ์‘๋‹ต์„ ๋ฐ›์œผ๋ฉด, ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ์žฌ์ „์†ก ๋ฐ›์ง€ ์•Š๊ณ , ์บ์‹ฑ๋œ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰, ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์š”์ฒญ๋œ ๋ฆฌ์†Œ์Šค๋ฅผ ๋ฐ›์€ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ž์‹ ์ด ์บ์‹ฑํ•ด๋†“์•˜๋˜ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ์ด ๋˜ํ•œ ์บ์‹ฑ๋œ ๋ฆฌ์†Œ์Šค๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

    4xx : Client error

    400 Bad Request

    ์ž˜๋ชป๋œ ๋ฌธ๋ฒ• ๋“ฑ์œผ๋กœ ์ธํ•ด ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด์ง€ ๋ชปํ•œ ์š”์ฒญ์„ ๋ณด๋‚ด ์„œ๋ฒ„๊ฐ€ ์ดํ–‰ํ•  ์ˆ˜ ์—†์Œ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ƒํƒœ์ฝ”๋“œ

    401 Unauthorized

    ์ธ์ฆ๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ธ์ฆ์ด ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ƒํƒœ์ฝ”๋“œ. ๋ณดํ†ต ์ธ์ฆ์ด ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์š”์ฒญํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉ๋œ๋‹ค. ๊ทธ๋ž˜์„œ, ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” 401์„ ๋ฐ›์œผ๋ฉด ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ ํ•˜๊ธฐ๋„ ํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.

    403 Forbidden

    ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ฝ˜ํ…์ธ ์— ์ ‘๊ทผํ•  ๊ถŒํ•œ์ด ์—†์Œ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค 403์˜ ๊ฒฝ์šฐ, ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ˜„์žฌ ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•œ ์‚ฌ์šฉ์ž๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ์ „ํ˜€ ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š๋Š”๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ˜„์žฌ ์ž์‹ ์ด ๋ˆ„๊ตฌ์ธ์ง€ ๋ฐํ˜”๋˜ ๋ฐํžˆ์ง€ ์•Š์•˜๋˜, ์ธ์ฆ์ด ๋˜์—ˆ๋˜ ์•ˆ ๋˜์—ˆ๋˜ ๊ฐ„์—, ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์€ ๋ฌด์กฐ๊ฑด ๊ธˆ์ง€๋ผ๊ณ  ๋งํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

    HTTPS ํ”„๋กœํ† ์ฝœ๋กœ๋งŒ ์ ‘๊ทผํ•ด์•ผํ•˜๋Š” ๋ฆฌ์†Œ์Šค์— HTTP ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ ‘๊ทผํ–ˆ์„ ๊ฒฝ์šฐ์— ์„œ๋ฒ„์—์„œ 403 ์‘๋‹ต์„ ๋ณด๋‚ด์ฃผ๊ธฐ๋„ ํ•œ๋‹ค. ๋ณดํ†ต ์ฐจ๋‹จ๋˜์–ด ์žˆ๋Š” ์‚ฌ์ดํŠธ์— ์ ‘์†์„ ์‹œ๋„ํ•œ ๊ฒฝ์šฐ ์‚ฌ์šฉ๋œ๋‹ค.

     

    404 Not Found

    ์š”์ฒญํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ธ์ฆ๋˜์ง€ ์•Š์€ ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ์ˆจ๊ธฐ๊ธฐ ์œ„ํ•ด 403 ๋Œ€์‹  ์ด ์‘๋‹ต์„ ์ „์†กํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ๋กœ ์ฐพ๊ณ ์ž ํ•˜๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ์—†๊ฑฐ๊ฐ€ ์š”์ฒญํ•œ API Route๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์„ ๋•Œ ์‚ฌ์šฉ.

    405 Method Not Allowed

    ํ˜„์žฌ ๋ฆฌ์†Œ์Šค์— ๋งž์ง€ ์•Š๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋กœ๋Š” GET ์š”์ฒญ๋งŒ ํ—ˆ์šฉ๋˜๋Š”๋ฐ POST ์š”์ฒญ์„ ํ•œ ๊ฒฝ์šฐ์˜ ์‘๋‹ต์ž…๋‹ˆ๋‹ค.

    406 No Acceptable

    ์•Œ๋งž์€ ์ฝ˜ํ…์ธ  ํƒ€์ž…์ด ์—†์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ์„œ๋ฒ„์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ํด๋ผ์ด์–ธํŠธ์˜ HTTPํ—ค๋”์— ๋“ค์–ด์žˆ๋Š” Accept ํ•„๋“œ์— ๋ช…์‹œ๋œ ์ฝ˜ํ…์ธ  ํƒ€์ž…์ด ์•„๋‹Œ ๊ฒฝ์šฐ์˜ ์‘๋‹ต.

    408 Request Timeout

    ์š”์ฒญ์— ์‘๋‹ตํ•˜๋Š” ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์˜ค๋ž˜๊ฑธ๋ฆผ์„ ์˜๋ฏธํ•œ๋‹ค.

    409 Conflict

    ์š”์ฒญ์ด ํ˜„์žฌ ์„œ๋ฒ„ ์ƒํƒœ์™€ ์ถฉ๋Œ๋  ๋•Œ์˜ ์‘๋‹ต. ์ด๋ฏธ ํšŒ์›๊ฐ€์ž… ๋œ ์œ ์ €์— ๋Œ€ํ•ด ๋‹ค์‹œ ํšŒ์›๊ฐ€์ž…์„ ์‹œ๋„ํ•  ๋•Œ, ์ข‹์•„์š” ์ฒ˜๋ฆฌ๊ฐ€ ๋œ ๊ฒƒ์— ๋Œ€ํ•ด ๋‹ค์‹œ ์ข‹์•„์š” ์š”์ฒญ์„ ํ•  ๋•Œ ๋“ฑ์˜ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉ๋œ๋‹ค.

    410 Gone

    ์ด ์‘๋‹ต์€ ์š”์ฒญํ•œ ์ฝ˜ํ…์ธ ๊ฐ€ ์„œ๋ฒ„์—์„œ ์˜๊ตฌ์ ์œผ๋กœ ์‚ญ์ œ๋˜์—ˆ์œผ๋ฉฐ, ์ „๋‹ฌํ•ด ์ค„ ์ˆ˜ ์žˆ๋Š” ์ฃผ์†Œ ์—ญ์‹œ ์กด์žฌํ•˜์ง€ ์•Š์„ ๋•Œ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ทธ๋“ค์˜ ์บ์‰ฌ์™€ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์ง€์šฐ๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์ผ์‹œ์ ์ด๊ฑฐ๋‚˜ ํ™๋ณด์šฉ ์„œ๋น„์Šค์ฒ˜๋Ÿผ ๊ธฐ๊ฐ„ ๋งŒ๋ฃŒ๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์„ ๋•Œ ๊ธฐ๊ฐ„ ๋งŒ๋ฃŒ ํ›„ ์‚ฌ์šฉํ•˜๊ณค ํ•œ๋‹ค.

    413 Payload too large

    ์š”์ฒญ์ด ๋„ˆ๋ฌด ์ปค์„œ ์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†์„ ๋•Œ์˜ ์‘๋‹ต์ด๋‹ค. ํŒŒ์ผ ๋“ฑ์„ ์ „๋‹ฌ ๋ฐ›์„ ๋•Œ ํŒŒ์ผ์˜ ํฌ๊ธฐ๊ฐ€ ์ •์˜ํ•œ ๊ฐ’๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ์™€ ๊ฐ™์€ ์ƒํ™ฉ์— ์‚ฌ์šฉํ•œ๋‹ค.

    429 Too many requests

    ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ง€์ •๋˜ ์‹œ๊ฐ„์— ๋„ˆ๋ฌด ๋งŽ์€ ์š”์ฒญ์„ ๋ณด๋‚ธ ๊ฒฝ์šฐ์˜ ์‘๋‹ต์ด๋‹ค.

    5xx : Server error

    500 Internal Server Error

    ์„œ๋ฒ„์— ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ์‘๋‹ตํ•  ์ˆ˜ ์—†์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ์„œ๋ฒ„์— ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋‚˜ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์„ ์•Œ ์ˆ˜ ์—†์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰, ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์˜ค๋ฅ˜์— ๋Œ€ํ•ด์„œ ์ฒ˜๋ฆฌํ•  ๋•Œ ์ด ์ƒํƒœ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. DB์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ์˜ˆ์™ธ์ฒ˜๋ฆฌ ์•ˆ๋œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์ด ์ฝ”๋“œ๊ฐ€ ์‘๋‹ต๋œ๋‹ค.

    ๋˜ํ•œ ์ด๋ ‡๊ฒŒ ํ•ธ๋“ค๋ง๋˜์ง€ ์•Š์€ ์—๋Ÿฌ์˜ ์›์ธ์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๊ณ ์Šค๋ž€ํžˆ ์•Œ๋ ค์ฃผ๋Š” ๊ฒƒ์€ ๋ณด์•ˆ ์‚ฌ๊ณ ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋„ˆ๋ฌด ํฌ๋ฏ€๋กœ, 500 ์ƒํƒœ ์ฝ”๋“œ๋กœ ์—๋Ÿฌ์˜ ๋ฐœ์ƒ ์ž์ฒด๋งŒ์„ ์•Œ๋ ค์ฃผ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ด๋‹ค. ๋งŒ์•ฝ ์ด ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ๋งŒ๋‚œ๋‹ค๋ฉด, ๋ฐ”๋กœ ์„œ๋ฒ„ ๋กœ๊ทธ๋ฅผ ๊นŒ๋ณด๊ฑฐ๋‚˜ Sentry๋‚˜ Bugsnag๊ณผ ๊ฐ™์€ ์—๋Ÿฌ ๋ชจ๋‹ˆํ„ฐ๋ง ์†”๋ฃจ์…˜์„ ์ ๊ทน ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค.

    501 Not Implemented

    ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ๋Œ€ํ•œ ์„œ๋ฒ„์˜ ์‘๋‹ต ์ˆ˜ํ–‰ ๊ธฐ๋Šฅ์ด ์—†์—ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

    502 Bad Gateway

    ์„œ๋ฒ„๊ฐ€ ๊ฒŒ์ดํŠธ์›จ์ด๋กœ๋ถ€ํ„ฐ ์ž˜๋ชป๋œ ์‘๋‹ต์„ ์ˆ˜์‹ ํ–ˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ์„œ๋ฒ„์˜ ๋ถ€๋ชจ ์„œ๋ฒ„์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ์˜ ์‘๋‹ต์ด๋‹ค. ๋ณดํ†ต ์„œ๋ฒ„๊ฐ€ ์ ‘์†ํ•˜๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋งŽ์•„ ๊ณผ๋ถ€ํ•˜๋  ๋•Œ ๋ฐœ์ƒํ•œ๋‹ค.

     

    ์ƒํƒœ ์ฝ”๋“œ 502๋ฅผ ๋งŒ๋‚  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํ”ํ•œ ์ƒํ™ฉ์€ ๋ฐ”๋กœ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ฃฝ์€ ์ƒํ™ฉ์ด๋‹ค. ๊ทผ๋ฐ ์™œ Server Died์™€ ๊ฐ™์ด ์ง์ ‘์ ์ธ ๋ฉ”์„ธ์ง€๊ฐ€ ์•„๋‹ˆ๋ผ Bad Gateway์™€ ๊ฐ™์€ ๋ฉ”์„ธ์ง€๋ฅผ ๋ณด๋‚ด์ฃผ๋Š” ๊ฒƒ์ผ๊นŒ?

    ๊ทธ ์ด์œ ๋Š” ๋ฐฑ์—”๋“œ ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์•„๋ฌด๋ฆฌ ๊ฐ„๋‹จํ•œ ๊ตฌ์กฐ๋ผ๊ณ  ํ•ด๋„ ์ ˆ๋Œ€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ 1๊ฐœ๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ๋งํ•˜๋Š” ๊ฒŒ์ดํŠธ์›จ์ด๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ„์˜ ์ถ”์ƒ์ ์ธ ์—ฐ๊ฒฐ์ ์„ ์˜๋ฏธํ•˜๋Š”๋ฐ, ์ด ๋ฉ”์„ธ์ง€๊ฐ€ ์˜๋ฏธํ•˜๋“ฏ ๋ฐฑ์—”๋“œ์˜ ์•„ํ‚คํ…์ฒ˜๋Š” ์ตœ์†Œ 2๊ฐœ ์ด์ƒ์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ด๋‹ค.

    ์ผ๋ฐ˜์ ์ธ ๊ฒฝ์šฐ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ณด๋‚ธ ์š”์ฒญ์€ ๊ณง๋ฐ”๋กœ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ „๋‹ฌ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. ์‚ฌ์‹ค ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์•ž๋‹จ์—๋Š” ์•„ํŒŒ์น˜๋‚˜ Nginx ๊ฐ™์€ ์„œ๋ฒ„ ์—”์ง„์ด๋‚˜ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ ๊ฐ™์€ ์นœ๊ตฌ๋“ค์ด ๋Œ€์‹  ์š”์ฒญ์„ ๋ฐ›์•„์„œ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ์ „๋‹ฌํ•ด์ฃผ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ด๋‹ค.

    server {
        listen 80;
    
        server_name evan.com;
    
        location / {
            proxy_pass http://127.0.0.1:3000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }

     

    Nginx๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๋Ÿฐ ์„ค์ •์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, ์ด๋ ‡๊ฒŒ ๋˜๋ฉด Nginx๋Š” 80๋ฒˆ ํฌํŠธ์—์„œ ๋Œ€๊ธฐํ•˜๋ฉฐ HTTP ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•œ ์š”์ฒญ์„ ๋ฐ›์•„ 3000๋ฒˆ ํฌํŠธ์—์„œ ๋Œ€๊ธฐํ•˜๊ณ  ์žˆ๋Š” ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๊ฒŒ ์ „๋‹ฌํ•ด์ฃผ๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.

    ์ด๋Ÿฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ณด์•ˆ๊ณผ ์ฒ˜๋ฆฌ ํšจ์œจ ๋•Œ๋ฌธ์ด๋‹ค. ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ž์ฒด๊ฐ€ ์™„์ „๋ฌด๊ฒฐํ•œ ์นœ๊ตฌ๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ์š”์ฒญ์„ ์•ˆ์‹ฌํ•˜๊ณ  ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๊ฒŒ ๋จน์—ฌ์ค„ ์ˆ˜๊ฐ€ ์—†๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๊ณ  ๋ˆ„๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์ง€๋„ ๋ชจ๋ฅด๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ์•ˆ์ „ํ•œ ์š”์ฒญ๋งŒ ๋ณด๋‚ด์ค„ ๊ฒƒ์ด๋ผ๋Š” ๊ธฐ๋Œ€ ๋˜ํ•œ ์–ด๋ถˆ์„ฑ์„ค์ด๋‹ค.

    ๊ฒŒ๋‹ค๊ฐ€ ๋ญ”๊ฐ€ ์—ฐ์‚ฐ์ด ํ•„์š”ํ•œ ์š”์ฒญ์ด ์•„๋‹Œ, ํŒŒ์ผ์„ ์ฐพ์•„์„œ ๋ณด๋‚ด์ฃผ๊ธฐ๋งŒ ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ์š”์ฒญ ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ๊ตณ์ด ์•ˆ ๊ทธ๋ž˜๋„ ๋ฐ”์œ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๊ฒŒ ์‹œํ‚ฌ ํ•„์š”๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์ด๋Ÿฐ ์„œ๋ฒ„ ์—”์ง„์ด ๋Œ€์‹  ์ฒ˜๋ฆฌํ•ด์ฃผ๊ธฐ๋„ ํ•œ๋‹ค.

    ๊ทธ๋ž˜์„œ ๋ฐฑ์—”๋“œ์—์„œ๋Š” ์•ž ๋‹จ์— ์•„์˜ˆ ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ๋‘์–ด์„œ ๋ฌธ์ง€๊ธฐ ์—ญํ• ์„ ์‹œํ‚ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋•Œ ์ด ํ”„๋ก์‹œ ์„œ๋ฒ„์™€ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ„์˜ ์—ฐ๊ฒฐ๋œ ์ถ”์ƒ์ ์ธ ํ†ต๋กœ๋ฅผ “๊ฒŒ์ดํŠธ์›จ์ด”๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ๊ฒƒ์ด๋‹ค. ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ฃฝ์–ด๋ฒ„๋ฆด ๊ฒฝ์šฐ ์•ž ๋‹จ์˜ ๋ฌธ์ง€๊ธฐ์ธ ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๊ฒŒ ์•„๋ฌด๋Ÿฐ ์‘๋‹ต์„ ๋ฐ›์ง€ ๋ชปํ•˜๊ฒŒ ๋˜๊ณ , ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ 502 Bad Gateway๋ผ๋Š” ์‘๋‹ต์„ ๋ณด๋‚ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.

    503 Services unavailable

     ์ƒํƒœ ์ฝ”๋“œ 503์€ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ์ค€๋น„๊ฐ€ ๋˜์ง€ ์•Š์•˜์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ๊ฐ„ํ˜น 502 Bad Gateway์™€ ๋น„์Šทํ•œ ๋Š๋‚Œ์œผ๋กœ ์‚ฌ์šฉ๋˜๊ธฐ๋Š” ํ•˜์ง€๋งŒ, 503์€ ๋ณด๋‹ค “์ผ์‹œ์ ์ธ ์ƒํ™ฉ”์„ ์˜๋ฏธํ•˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์ด๋ฉฐ, ์ผ๋ฐ˜์ ์œผ๋กœ ์„œ๋ฒ„์— ๋ถ€ํ•˜๊ฐ€ ์‹ฌํ•ด์„œ ํ˜„์žฌ ์š”์ฒญ์„ ํ•ธ๋“ค๋ง ํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ์œ ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์— ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.

    AWS Lambda์—์„œ๋Š” ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์ปจํ…Œ์ด๋„ˆ์˜ ๋™์‹œ ์‹คํ–‰ ๊ฐฏ์ˆ˜๋ฅผ ์ดˆ๊ณผํ•  ์ •๋„์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•„์š”ํ•˜๊ฑฐ๋‚˜ ์–ด๋–ค ์ž‘์—…์˜ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์ด Lambda์— ์„ค์ •๋œ ์ปจํ…Œ์ด๋„ˆ์˜ ์ตœ๋Œ€ ์ˆ˜๋ช… ์‹œ๊ฐ„์„ ์ดˆ๊ณผํ–ˆ์„ ๊ฒฝ์šฐ์— ๋ฐœ์ƒํ•˜๊ธฐ๋„ ํ•œ๋‹ค.

    ์ด๋ ‡๋“ฏ์ด 503์€ ์ผ์‹œ์ ์ธ ์ƒํ™ฉ์„ ์˜๋ฏธํ•˜๋ฏ€๋กœ 429 Too Many Requests์™€ ๋™์ผํ•˜๊ฒŒ ์‘๋‹ต ํ—ค๋”์˜ Retry-After ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ “์ด ์‹œ๊ฐ„ ์ดํ›„์— ๋‹ค์‹œ ์š”์ฒญํ•ด๋ด”๋ผ๋Š” ์˜๋ฏธ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค.

     

    504 Gateway Timeout

    ์ƒํƒœ ์ฝ”๋“œ 504๋Š” 408๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์š”์ฒญ์— ๋Œ€ํ•œ ํƒ€์ž„์•„์›ƒ์„ ์˜๋ฏธํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ 504 ์ƒํƒœ ์ฝ”๋“œ๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ณด๋‚ธ ์š”์ฒญ ๋•Œ๋ฌธ์— ํƒ€์ž„์•„์›ƒ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฐฑ์—”๋“œ ์•„ํ‚คํ…์ฒ˜ ๋‚ด๋ถ€์—์„œ ์„œ๋ฒ„๋ผ๋ฆฌ ์ฃผ๊ณ ๋ฐ›๋Š” ์š”์ฒญ์—์„œ ๋ฐœ์ƒํ•œ๋‹ค.

    ์•ž์„œ ์ด์•ผ๊ธฐํ–ˆ๋“ฏ์ด ๋ฐฑ์—”๋“œ์˜ ์•„ํ‚คํ…์ฒ˜๋Š” ๋‹จ์ˆœํžˆ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ•˜๋‚˜๋กœ๋งŒ ๊ตฌ์„ฑ๋œ ๊ฒƒ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—, ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์ด ์„œ๋ฒ„์— ๋‹ฟ์€ ๋’ค์—๋„ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๋ผ๋ฆฌ์˜ ํ†ต์‹ ์ด ๋ฐœ์ƒํ•˜๊ฒŒ ๋œ๋‹ค. ๋งŒ์•ฝ ํ”„๋ก์‹œ ์„œ๋ฒ„ ์—ญํ• ์„ ๋งก์€ Nginx๊ฐ€ ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ์ „๋‹ฌํ–ˆ๋Š”๋ฐ, ๋ฐฑ์—”๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ผ์ • ์‹œ๊ฐ„ ๋™์•ˆ ์‘๋‹ต์„ ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ Nginx๋Š” ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ 504 Geteway Timeout์„ ๋‚ด๋ ค์ฃผ๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋‹ค.

    'Server' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    REST API (path parameter, query parameter)  (0) 2022.11.20
    API METHOD PATCH vs PUT  (0) 2022.11.15
    ๋ฐฑ์—”๋“œ API ํŒจํ„ด - Layered Architecture  (0) 2022.11.15
    [์ƒํ™œ์ฝ”๋”ฉ] Home Server  (0) 2022.10.01

    ๋Œ“๊ธ€