Notice
Recent Posts
Recent Comments
Link
ยซ   2024/10   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

R136A1

http redirect ์กฐ์‚ฌ ๋ณธ๋ฌธ

PROJECT/๐Ÿงก์›น

http redirect ์กฐ์‚ฌ

r136a1x27 2021. 5. 21. 23:56

(kor) https://developer.mozilla.org/ko/docs/Web/HTTP/Redirections

(eng) https://developer.mozilla.org/en-US/docs/Web/HTTP/Redirections

URL redirection

URL forwarding

์‹ค์ œ Resource OR Form OR ์ „์ฒด ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋‹ค๋ฅธ URL์— ์œ„์น˜ํ•˜๊ณ  ์žˆ๋Š” ์ƒํƒœ์—์„œ link๋ฅผ ์กด์†์‹œํ‚ค๋Š” ๊ธฐ์ˆ 

 

๋ชฉํ‘œ

1. ์‚ฌ์ดํŠธ ์œ ์ง€๊ด€๋ฆฌ๊ฐ€ ์ง„ํ–‰ ์ค‘์ธ ์ƒํƒœ์—์„œ์˜ ์ผ์‹œ์ ์ธ Redirection

2. ์‚ฌ์ดํŠธ ์•„ํ‚คํ…์ณ์˜ ๋ณ€๊ฒฝ ์ดํ›„์—๋„ ์™ธ๋ถ€ ๋งํฌ๋ฅผ ๋™์ž‘ํ•˜๋Š” ์ƒํƒœ๋กœ ์œ ์ง€์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์˜๊ตฌ์  Redirection

3. ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ ์ง„ํ–‰ ์ƒํƒœ ํŽ˜์ด์ง€

4. ๊ทธ ์™ธ...

 

์›์น™

Request์— ๋Œ€ํ•ด ํŠน๋ณ„ํ•œ Response๋ฅผ ์ „์†กํ•จ์œผ๋กœ์จ ์ด‰๋ฐœ

HTTP Redirect = 3xx ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ์ง€๋‹Œ Response

์ด๋ฅผ ์ˆ˜์‹ ํ•œ ๋ธŒ๋ผ์šฐ์ €๋Š” ์ œ๊ณต๋œ ์ƒˆ๋กœ์šด URL์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฆ‰์‹œ ์ƒˆ๋กญ๊ฒŒ load

 

๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์ด์ง€ ์•Š๊ณ  ์ ์€ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ์ผ์œผํ‚ด

[HTTP ์‘๋‹ต ์ƒํƒœ ์ฝ”๋“œ 302 + ์‘๋‹ต ๋ฉ”์‹œ์ง€ ํ—ค๋” Location: Redirect ๋˜์–ด์•ผ ํ•  ์ฃผ์†Œ] ๋ฅผ Return ํ•จ

์›น ํด๋ผ์ด์–ธํŠธ: HTTP ์‘๋‹ต ๋ฉ”์‹œ์ง€์˜ ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ๋ณด๊ณ  Redirect ์ธ์ง€ → Location์— ์„ค์ •๋˜์–ด ์žˆ๋Š” URL๋กœ ์žฌ์š”์ฒญ

(๋ธŒ๋ผ์šฐ์ € ๋“ฑ...)

 

 

์œ ํ˜•

Permanent (์˜๊ตฌ์ )

Temporary (์ผ์‹œ์ )

(ํŠน์ˆ˜์ )

 

1. Permanent

์˜์›ํžˆ ์ง€์†๋จ - ์›๋ž˜์˜ URL์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ๋•Œ๋งŒ, ์ƒˆ๋กœ์šด URL์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ธ ๊ฒฝ์šฐ

301 Moved Permanently 

[Method Handling] GET ๋ฉ”์„œ๋“œ๋Š” ๊ทธ๋Œ€๋กœ, ๋‹ค๋ฅธ ๋ฉ”์„œ๋“œ๋Š” GET์œผ๋กœ ๋ณ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€ํ•˜์ง€ ์•Š์Œ

ใ„ด๋ฉ”์„œ๋“œ ๋ณ€๊ฒฝ์„ ํ•˜์ง€ ์•Š์•„์•ผ ํ•˜๋‚˜, ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ๊ฐ€ ๊ทธ๋Ÿฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งค๋ฒˆ ์• ๋งคํ•จ

[Use Case] ์›น ์‚ฌ์ดํŠธ์˜ ์žฌ๊ตฌ์„ฑ

๊ฒ€์ƒ‰์—”์ง„ ํฌ๋กค๋Ÿฌ๋Š” contents๊ฐ€ ์™„์ „ํžˆ ์ƒˆ๋กœ์šด URL๋กœ ์˜์›ํžˆ ์ด๋™ํ–ˆ๋‹ค๊ณ  ํŒ๋‹จ

๊ณผ๊ฑฐ URL์˜ ํŽ˜์ด์ง€ ๋žญํ‚น๊ณผ ํ‰๊ฐ€์ ์ˆ˜๋„ ํ•จ๊ป˜ ์ด๋™

 

308 Permanent Redirect

[Method Handling] ๋ฉ”์„œ๋“œ์™€ ๋ณธ๋ฌธ ๊ทธ๋Œ€๋กœ

ใ„ดGET์ด ์•„๋‹Œ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์˜ ๋™์ž‘์˜ ์• ๋งค๋ชจํ˜ธํ•จ์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Œ

[Use Case] GET์ด ์•„๋‹Œ ๋งํฌ, ๋™์ž‘์„ ์ง€๋‹Œ ์›น ์‚ฌ์ดํŠธ์˜ ์žฌ๊ตฌ์„ฑ

 

2. Temporary

Request๋œ Resource๊ฐ€ ํ‘œ์ค€ ์œ„์น˜์—์„œ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๊ณ  ๋‹ค๋ฅธ ์œ„์น˜์—์„œ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ

์ผ์‹œ์ ์ธ ์ง„ํ–‰์œจ ํŽ˜์ด์ง€๋ฅผ ํ‘œ์‹œํ•˜๊ณ ์ž ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŒ๋“ค๊ณ  ๊ฐฑ์‹ ํ•˜๋ฉฐ ์‚ญ์ œ๋  ๋•Œ ์‚ฌ์šฉ (?)

 

302 Found

[Method Handling] GET ๋ฉ”์„œ๋“œ๋Š” ๊ทธ๋Œ€๋กœ, ๋‹ค๋ฅธ ๋ฉ”์„œ๋“œ๋Š” GET์œผ๋กœ ๋ณ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€ํ•˜์ง€ ์•Š์Œ

[Use Case] ์›น ํŽ˜์ด์ง€๊ฐ€ ์˜ˆ์ธกํ•˜์ง€ ๋ชปํ•œ ์ด์œ ๋กœ ์ผ์‹œ์ ์œผ๋กœ ์ด์šฉ ๋ถˆ๊ฐ€๋Šฅํ•  ๋•Œ (๊ฒ€์ƒ‰ ์—”์ง„์ด ๊ฐฑ์‹ X)

๊ฒ€์ƒ‰์—”์ง„ ํฌ๋กค๋Ÿฌ๋Š” ์ด๋™์ด ์ž„์‹œ์ ์ด๋ผ๊ณ  ํŒ๋‹จ, ๊ณผ๊ฑฐ URL์˜ ํŽ˜์ด์ง€ ๋žญํ‚น๊ณผ ํ‰๊ฐ€์ ์ˆ˜ ๊ทธ๋Œ€๋กœ ์œ ์ง€

contents๋งŒ ์ƒˆ๋กœ์šด URL์—์„œ ์กฐํšŒ๋˜๋„๋ก ํ•จ

ex) ์‡ผํ•‘๋ชฐ์—์„œ ์ผ์‹œํ’ˆ์ ˆ

 

303 See Other

[Method Handling] GET ๋ฉ”์„œ๋“œ๋Š” ๊ทธ๋Œ€๋กœ, ๋‹ค๋ฅธ ๋ฉ”์„œ๋“œ๋Š” GET์œผ๋กœ ๋ณ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€ํ•˜์ง€ ์•Š์Œ

[Use Case] ๋™์ž‘์„ ๋‹ค์‹œ ์ด‰๋ฐœ์‹œํ‚ค๋Š” page refresh๋ฅผ ๋ง‰๊ธฐ ์œ„ํ•ด PUT ๋˜๋Š” POST์— ์‚ฌ์šฉ๋จ

 

307 Temporary Redirect

[Method Handling] ๋ฉ”์„œ๋“œ์™€ ๋ณธ๋ฌธ ๊ทธ๋Œ€๋กœ

[Use Case] ์›น ํŽ˜์ด์ง€๊ฐ€ ์˜ˆ์ธกํ•˜์ง€ ๋ชปํ•œ ์ด์œ ๋กœ ์ผ์‹œ์ ์œผ๋กœ ์ด์šฉ ๋ถˆ๊ฐ€๋Šฅํ•  ๋•Œ (๊ฒ€์ƒ‰ ์—”์ง„์ด ๊ฐฑ์‹ X)

GET์ด ์•„๋‹Œ ๋งํฌ/๋™์ž‘์ด ์‚ฌ์ดํŠธ์—์„œ ์ด์šฉ ๊ฐ€๋Šฅํ•  ๊ฒฝ์šฐ 302๋ณด๋‹ค ์ข‹์Œ

 

 

3. ํŠน์ˆ˜

300 Multiple Choice

[Use Case] ์ •๋ง ํŠน์ˆ˜ํ•จ. ๋ณธ๋ฌธ์˜ HTMLํŽ˜์ด์ง€ ๋‚ด์— ์„ ํƒ์ง€๊ฐ€ ๋‚˜์—ด๋จ. 200 OK ์ƒํƒœ์™€ ํ•จ๊ป˜ ์„œ๋ธŒ๋  ์ˆ˜ ์žˆ์Œ

 

304 Not Modified

[Use Case] Cash Refresh: ์บ์‹œ ๊ฐ’์ด ์—ฌ์ „ํžˆ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•  ์ •๋„๋กœ ์‹ ์„ ํ•จ์„ ๊ฐ€๋ฆฌํ‚ด

 

๋”๋ณด๊ธฐ

IANA - HTTP ์ƒํƒœ ์ฝ”๋“œ - 5๊ฐœ์˜ ํด๋ž˜์Šค๋กœ ๊ตฌ๋ถ„๋จ - ๋ฐฑ์˜ ์ž๋ฆฌ

1xx: Information - Request received, continuing process

2xx: Success - The action was successfully received, understood, and accepted

3xx: Redirection - Further action mush be taken in order to complete the request

4xx: Client Error - The request contains bad syntax or cannot be fufilled

5xx: Server Error - The server failed to fulfill an apparently valid request


HTTP Redirection

์ƒ์œ„ ๊ธฐ์žฌ

 

HTML Redirection

<head>๋‚ด <meta> ์—˜๋ฆฌ๋จผํŠธ์™€ http-equiv ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ

Request๋œ page๋ฅผ displayํ•  ๋•Œ browser๊ฐ€ ์ด ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋ฐœ๊ฒฌํ•˜๊ณ  ํ‘œ์‹œ๋œ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•  ๊ฒƒ

 

JavaScript Redirection

window.location = "http://www.example.com/";

๋ชจ๋“  ๋ฆฌ์†Œ์Šค์—์„œ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์€ X

JS๋ฅผ ์‹คํ–‰ํ•œ Client ์ƒ์—์„œ๋งŒ ๋™์ž‘

JS์˜ ํŠน์„ฑ์œผ๋กœ ์กฐ๊ฑด๋ฌธ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

https://searchadvisor.naver.com/guide/seo-basic-redirect

*์ผ๋ฐ˜์ ์œผ๋กœ ๊ฒ€์ƒ‰์—”์ง„ ๋กœ๋ด‡์ด ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ค์šด ํ˜•์‹์ด๋ผ ์–ด๋–ค URL๋กœ redirect๋˜๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ ์–ด๋ ค์›€

redirect ์ •๋ณด๋ฅผ ์ˆจ๊ธฐ๋Š” ํ˜•ํƒœ์˜ ์ŠคํŒธ์„ฑ ๋ฌธ์„œ ๋งŽ์ด ๋ฐœ๊ฒฌ ์ค‘ → ์ข‹์€ ํŽ˜์ด์ง€๋”๋ผ๋„ JS ์‚ฌ์šฉ ์‹œ ์ €ํ‰๊ฐ€

๋„ค์ด๋ฒ„ ๊ฒ€์ƒ‰ ๋กœ๋ด‡์€ HTTP html refresh ์ธ์‹ํ•˜์ง€๋งŒ HTML 4.01 ํ‘œ์ค€์—์„œ๋Š” ์ด๊ฒƒ๋„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ๊ถŒ์žฅ

 

 

์šฐ์„ ์ˆœ์œ„

HTTP > HTML > JS


Use case

1. domain aliasing ๋„๋ฉ”์ธ ์•จ๋ฆฌ์–ด์‹ฑ

ํ•˜๋‚˜์˜ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ๋Œ€์ฒด ์ด๋ฆ„

- ์‚ฌ์ดํŠธ ๋ฒ”์œ„ ํ™•์žฅ(www.example.com -> example.com)

- ๋‹ค๋ฅธ ๋„๋ฉ”์ธ์œผ๋กœ ์ด๋™ (ํšŒ์‚ฌ ์ด๋ฆ„ ๋ณ€๊ฒฝ ์‹œ ์ด์ „ ์ด๋ฆ„์œผ๋กœ ๊ฒ€์ƒ‰๋˜๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ์šด ์‚ฌ์ดํŠธ๋ฅผ ์ด์šฉํ•˜๋„๋ก)

- HTTPS ๊ฐ•์ œ(http:// -> https://)

 

2. link ์œ ์ง€

3. ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ์š”์ฒญ์— ๋Œ€ํ•œ ์ผ์‹œ์ ์ธ ์‘๋‹ต

4. ๊ธด ์š”์ฒญ์— ๋Œ€ํ•œ ์ผ์‹œ์ ์ธ ์‘๋‹ต


์„œ๋ฒ„ ๋‚ด Redirect

Apache, Nginx, IIS


์•…์šฉ: ๋†’์€ ํŽ˜์ด์ง€ ๋žญํฌ๋ฅผ ๊ฐ€์ง„ URL์„ ๊ตฌ์ž…ํ•˜์—ฌ contents๋งŒ ๊ด‘๊ณ  ํŽ˜์ด์ง€๋กœ ์ด๋™์‹œํ‚ด

Google์€ 302๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋ถ€์ ์ ˆํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์‚ฌ์ดํŠธ๋žญํฌ์— ๋งŽ์€ ํŒจ๋„ํ‹ฐ ๋ถ€์—ฌ

'PROJECT > ๐Ÿงก์›น' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํ˜น์Šค(Hoax) ๋ฉ”์ผ์ด๋ž€  (0) 2022.03.01
์Šค๋ฏธ์‹ฑ ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ  (0) 2021.07.10
๋ชจ๋“ˆ ์กฐ์‚ฌ  (0) 2021.05.20
scant3r/xss  (0) 2021.05.04
scant3r/main  (0) 2021.05.04
Comments