๋ธ๋ก๊ทธ ์ฟ ํก ํํธ๋์ค ์ ํด ๋งํฌ๋ก ์ธํ ์ ํ์ง ๋ฌธ์ ๋ฐฉ์งํ๊ธฐ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ฟ ํก ํํธ๋์ค ์ ํด ๋ง์ผํ ๋งํฌ๋ก ์ธํ ์ ํ์ง ๋ฌธ์ ์ ์์ธ, ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์์ธ ๋ถ์ํฉ๋๋ค. ๋จ์ถ URL, ์๋ฒ 302/301 ๋ฆฌ๋ค์ด๋ ํธ, JS ๋ฆฌ๋ค์ด๋ ํธ ๋ฑ ๋ฐฉ์๋ณ SEO ์ํฅ๊ณผ ์์ ํ ๋๋ฉ ํ์ด์ง ์ด์ ์ ๋ต๊น์ง ๋ชจ๋ ํ์ธํ์ธ์.
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ๋ฅผ ์ด์ํ๋ฉด์ ์ ํด ์ํ(์ฟ ํกํํธ๋์ค) ๋งํฌ๋ก ์ธํด ๋ฐ์ํ๋ ์ ํ์ง ๋ฌธ์ ๋ฅผ ๋ค๋ฅด๋ฃฌ ์ฝํ ์ธ ๋ฅผ ์ฌ๋ฌ ์ฐจ๋ก ์๊ฐํ์ต๋๋ค. ์ด๋ฒ ๊ธ์์๋ ์ด๋ฌํ ์ ํ์ง ๋ฌธ์ ์ ๋ฆฌ๋ค์ด๋ ํธ์ ๋จ์ถ URL์ ๊ทผ๋ณธ ์์ธ๊ณผ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ณด๋ค ๊น์ด ์๋ ๊ด์ ์์ ๋ถ์ํ๊ณ ์ ํฉ๋๋ค.
๋ํ, ์ผ๋ฐ์ ์ผ๋ก ๋ง์ด ์ฌ์ฉํ๋ ๋จ์ถ URL์ด ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ ์ค์ง์ ์ธ ํจ๊ณผ๊ฐ ์๋์ง, ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ธํ ์ดํด๋ด ๋๋ค.
์ด ๋ฌธ์ ๋ ๋จ์ํ ๊ด๊ณ ์ฝ์ ์ด๋ a ํ๊ทธ ํด๋ฆญ ๋ฐฉ์๋ง์ ๋ฌธ์ ๊ฐ ์๋๋ผ, ๊ฒ์ ์์ง ์ ์ฑ , ๋งํฌ ๊ตฌ์กฐ, ๋ด ์ฒ๋ฆฌ ๋ฐฉ์๊ณผ ๋ฐ์ ํ๊ฒ ์ฐ๊ด๋์ด ์์ต๋๋ค.
์ด ๊ธ์์๋ ๋ฌธ์ ์ ๊ณผ ๋ถ์, ๊ทธ๋ฆฌ๊ณ ์ค์ ์ฝ๋ ๊ธฐ๋ฐ ๋์ ๋ฐฉ๋ฒ๊น์ง ๊ตฌ์ฒด์ ์ผ๋ก ์๊ฐํ์ฌ, ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ ํด ๋ง์ผํ ๋งํฌ๋ฅผ ์์ ํ๊ณ ํจ์จ์ ์ผ๋ก ์ด์ํ ์ ์๋ ์ ๋ต์ ์ ์ํฉ๋๋ค.
์ ํด ๋งํฌ(์ํ๋งํฌ) ์ฝํ ์ธ ๋ธ๋ก๊ทธ ์ ํ์ง์ ๋ฌธ์ ์
๋ธ๋ก๊ทธ ๊ธ ๋ด ์ ํด ๋ง์ผํ ๋งํฌ๋ฅผ a ํ๊ทธ๋ก ์ง์ ์ฐ๊ฒฐํ ๊ฒฝ์ฐ
- ๋ฐฉ๋ฌธ์๊ฐ ํด๋ฆญํ๊ธฐ ์ ๊น์ง ๋งํฌ ์ด๋์ด ๋ฐ์ํ์ง ์์
- ๊ฒ์ ๋ด์ด ๋งํฌ๋ฅผ ๋ฐ๋ผ๊ฐ๊ฑฐ๋ ํ์ด์ง๋ฅผ ์ธ๋ฑ์ฑํ ๋ ์ ํ์ง ํ๋จ ์์ธ์ด ๋ ์ ์์
๋ฐ๋ณต์ ์ธ ์ ํด ๋งํฌ, ํด๋ฆญ ์ ๋ ๋ฌธ๊ตฌ, ์ธ๋ถ ๋ฆฌ๋๋ ํธ ๋ค์ ๋ค์ด๋ฒ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์์ ์ ํ์ง ์ ํธ๋ก ์ธ์๋ ์ ์์
1. ์ํ ๋งํฌ ๋ฆฌ๋ค์ด๋ ํธ ๋ฐฉ์ 3๊ฐ์ง ๋น๊ต
๊ฒ์ ์์ง ๋ด(์: Googlebot, Naverbot ๋ฑ)์ด ์ ๊ทผํ์ ๋ ํ์ด์ง๊ฐ ์ด๋ป๊ฒ ์ฒ๋ฆฌ๋๋์ง, ์ฆ ๊ฒ์ ์์ง์ด ๋ณด๋ ์ต์ข ๋ชฉ์ ์ง
๋ฅผ ์ผ๋ง๋ ์ฝ๊ฒ ์์ ์๋์ง ํ์ธ ํด๋ณด๊ฒ ์ต๋๋ค..
ํ 1: ๋ฐฉ์ / ๋งํฌ / ๋์ ์์น
| ๋ฐฉ์ | ์์ | ๋งํฌ ๋์ ์์น |
| ์๋ฒ 302/301 ๋ฆฌ๋ค์ด๋ ํธ | https://vo.la/hpecmp5 | ์๋ฒ(HTTP ํค๋) |
| Meta Refresh | metahttp-equiv="refresh"content="0;url=https://example.com" | HTML head |
| JS location.replace() | https://narrative-po.tistory.com/pages/reco?id=2 | ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ /JS) |

ํ 2: ์ฝ๋ ์์ / SEO / ํน์ง
| ์ฝ๋ ์์ | SEO/ ๊ฒ์์์ง ์ธ์ | ํน์ง |
| http\nHTTP/1.1 302 Found\nLocation: https://link.coupang.com/a/cT6X94\n | ์ต์ข
URL ๋ฐ๋ก ์ธ์ 302 ์์, 301 ์๊ตฌ ์ด๋ |
๋ธ๋ผ์ฐ์ /๋ด ๋ชจ๋ ์ฆ์ ์ด๋. ๋งํฌ ๊ฐ์น ์ ๋ฌ |
| html\n\n | โ ๋๋ถ๋ถ ๊ฒ์ ์์ง ๋ฐ๋ผ๊ฐ์ง๋ง ๊ถ์ฅํ์ง ์์ | HTML ๊ธฐ๋ฐ ์ด๋, ๋ธ๋ผ์ฐ์ ๊ฐ HTML ํ์ฑํด์ผ ์ด๋ |
| js\nvar params = new URLSearchParams(window.location.search);\nlocation.replace(target.url);\n | โ ๊ตฌ๊ธ์ JS ์คํ ํ ๋ฐ๋ผ๊ฐ์ง๋ง, ์ผ๋ถ ๊ฒ์ ์์ง์ ๋ฏธ์ธ์ | ๋ธ๋ผ์ฐ์ JS ์คํ ํ์. SEO ๋ถํ์ค |
ํต์ฌ ํฌ์ธํธ
๋ฆฌ๋ค์ด๋ ํธ ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์๋ ์ฌ์ดํธhttps://wheregoes.com/
302 ์๋ฒ ๋ฆฌ๋ค์ด๋ ํธ( ๋จ์ถ URL)

- ๊ฒ์ ์์ง ๋ด์ HTTP ํค๋์ Location์ ๋ณด๊ณ ๋ฐ๋ก ์ต์ข URL๋ก ๋ฐ๋ผ๊ฐ๋๋ค.
- vo.la/hpecmp5 ๊ฐ์ ๋จ์ถ ๋งํฌ๋ ๊ฒ์ ์์ง ์ ์ฅ์์ ์ต์ข ๋ชฉ์ ์ง๊ฐ ์ด๋์ธ์ง ํค๋๋ง ๋ณด๋ฉด ๋ฐ๋ก ์ ์ ์์ด์.
- ์: curl -I https://vo.la/hpecmp5 Location: https://link.coupang.com/a/cT6X94 ๊ตฌ๊ธ ๋ด์ ์ต์ข ๋ชฉ์ ์ง๋ฅผ ๋ฐ๋ก ํ์ .
Meta Refresh
- meta http-equiv="refresh" content="0; url=..."๋ก ๋ฆฌ๋ค์ด๋ ํธ ํ๋ ๊ฒฝ์ฐ, ๋ด๋ ์ด๋ฅผ ์ด๋ ์ ๋ ๋ฐ๋ผ๊ฐ์ง๋ง JS๋ณด๋ค ์ธ์๋ฅ ์ด ๋์.
- ์ฆ, ๊ฒ์ ์์ง์ด ์ต์ข URL์ ์์ธํ ์ ์์.
JS location.replace()

- ์๋ฐ์คํฌ๋ฆฝํธ ๋ฆฌ๋ค์ด๋ ํธ๋ ๊ฒ์ ์์ง๋ง๋ค ์ฒ๋ฆฌ ๋ฐฉ์์ด ๋ค๋ฆ.
- ๊ตฌ๊ธ์ ๋๋ถ๋ถ JS ์คํ ํ ์ด๋ URL์ ๋ฐ๋ผ๊ฐ์ง๋ง, Naver, Bing ๋ฑ ์ผ๋ถ ๊ฒ์ ์์ง์ JS ์คํ ํ ๋ฆฌ๋ค์ด๋ ํธ๋ฅผ ์ ๋๋ก ์ธ์ํ์ง ๋ชปํ ์ ์์.
- ๊ทธ๋์ JS ๋ฆฌ๋ค์ด๋ ํธ๋ SEO ๊ด์ ์์ ๋ถํ์ค์ฑ์ด ์์.
์ ํด ์ํ ๋งํฌ ๋ฆฌ๋ค์ด๋ ํธ ์ ๋ฆฌ
- ์๋ฒ 302/301 ๋ฆฌ๋ค์ด๋ ํธ ๊ฒ์ ์์ง์ด ์ต์ข ๋ชฉ์ ์ง๋ฅผ ๋ฐ๋ก ์ ์ ์์
- Meta Refresh ๋ด๋ ์ด๋ ์ ๋ ๋ฐ๋ผ๊ฐ์ง๋ง ๊ถ์ฅํ์ง ์์ โ
- JS location.replace() ๋ธ๋ผ์ฐ์ ์์๋ ์ด๋, ๊ฒ์ ์์ง ๋ด๋ง๋ค ๋ฐ๋ผ๊ฐ๋ ์ ๋๊ฐ ๋ฌ๋ผ์ ๋ถํ์ค
- ์๋ ์๋ฒ 302/301: ๊ฒ์์์ง์ด ์ต์ข ๋ชฉ์ ์ง(์ ํด ๋งํฌ)๋ฅผ ๋ฐ๋ก ํ์ ์ํ ๋ชฉ์ ์๋ ๋ถ์ ํฉ.
- JS ์๋ ๋ฆฌ๋ค์ด๋ ํธ: ์ผ๋ถ ๊ฒ์์์ง์ JS๋ฅผ ์คํํด ๋ฐ๋ผ๊ฐ๋ฏ๋ก ์๋ฒฝํ ์ํ๋ ๋ถ๊ฐ.
๊ฐ์ฅ ์ค์ฉ์ ์ด๊ณ ์์ ํ ๋ฐฉ๋ฒ: ์ค๊ฐ(๋๋ฉ) ํ์ด์ง + ์ ์๋ฏธํ ์ฝํ ์ธ + ์ฌ์ฉ์ ํด๋ฆญ(๋ฒํผ)์ผ๋ก ์ด๋ + rel="sponsored", ๊ทธ๋ฆฌ๊ณ ํ์ํ๋ฉด ๊ทธ ์ค๊ฐ ํ์ด์ง์ noindex๋ฅผ ์ ์ฉํด ๊ฒ์์์ง ์์ธ์์ ์ ์ธ. (์ฆ,
์๋์ผ๋ก ๋ด๋ง ์์ฌ์ ๋ค๋ฅธ ๊ฒฐ๊ณผ ๋ณด์ฌ์ฃผ์ง ๋ง์ธ์์ ์ฑ ์ ์ํ)
2. ๊ฒ์๋ถ์ ์ต์ข ๋ชฉ์ ์ง ํ ์คํธ ๋ฐฉ๋ฒ
๊ฒ์ ๋ด User-Agent๋ก ์ ์ํ์ ๋ meta noindex, nofollow ํฌํจ ์ฌ๋ถ๊น์ง ํ์ธํ๋ curl ๋ช ๋ น์ด์ ๋๋ค.
Windows / PowerShell์ฉ
curl -A "Mozilla/5.0 (compatible; Googlebot/2.1;
+http://www.google.com/bot.html)" "https://narrative-po.tistory.com/pages/reco?id=1"
| findstr "meta"
Welcome to the Google Cloud CLI! Run "gcloud -h" to get the list of available commands.
---
C:\Program Files (x86)\Google\Cloud SDKcurl -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" -I "https://narrative-po.tistory.com/pages/reco?id=1"
HTTP/1.1 200
date: Tue, 30 Sep 2025 12:36:30 GMT
content-type: text/html;charset=UTF-8
content-length: 29857
t_userid: 4283fe3f4df2acacf3a5679bcad773aff5bff174
set-cookie: REACTION_GUEST=3ef3618b24bc998347b2434615c4b7974eee03e2
x-content-type-options: nosniff
x-xss-protection: 0
cache-control: no-cache, no-store, max-age=0, must-revalidate
pragma: no-cache
expires: 0
strict-transport-security: max-age=31536000 ; includeSubDomains
C:\Program Files (x86)\Google\Cloud SDK
์ง๊ธ curl -I ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด:
- 200 OK ํ์ด์ง ์ ์ ๋ฐํ
- Location ํค๋ ์์ ๋ฆฌ๋๋ ํธ ์์
์ฆ, ๊ฒ์ ๋ด(Googlebot User-Agent)์ผ๋ก ์ ์ํ์ ๋ ๋ฆฌ๋๋ ํธ๊ฐ ์ฐจ๋จ๋๊ณ ์๋ ๊ฒ์ด ํ์ธ๋จ
์์ฝ
- ์ผ๋ฐ ๋ฐฉ๋ฌธ์ ํ์ด์ง ์ด๋ฆฌ์๋ง์ target URL๋ก ๋ฆฌ๋๋ ํธ
- ๊ฒ์ ๋ด(User-Agent: Googlebot ๋ฑ) 200 OK, ๋ฆฌ๋๋ ํธ ์์,
๋์ ์ค๋ช
- -A : User-Agent๋ฅผ Googlebot์ผ๋ก ์ง์ ๋ด ์๋ฎฌ๋ ์ด์
- URL ์ ์ ํ ํ์ด์ง HTML ์ถ๋ ฅ
- | findstr "meta" ๋๋ | grep "meta" : meta ํ๊ทธ๋ง ํํฐ๋ง
์ถ๋ ฅ์์ meta name="robots" content="noindex, nofollow"๊ฐ ๋ณด์ด๋ฉด ๊ฒ์ ๋ด์ด ๋ฆฌ๋๋ ํธ๋์ง ์๊ณ meta ํ๊ทธ๋ง ์ฝ์์ด ํ์ธ๋จ
3. ์ ํด ์ํ ๋งํฌ ์ค์ ์ฝ๋ ์์ (๋ธ๋ก๊ทธ์ ๋ถ์ฌ๋ฃ๊ธฐ ์ฉ)
A) (๊ถ์ฅ) ์ค๊ฐ ๋๋ฉ ํ์ด์ง ์ฌ์ฉ์ ํด๋ฆญ์ผ๋ก ์ด๋ (์ถ์ฒ)
๊ฐ ์ํ ๋งํฌ์ ๋ํ ๋ณ๋์ ๋๋ฉ ํ์ด์ง๋ฅผ ์ ์ํฉ๋๋ค.
์ด ํ์ด์ง์๋ ์ํ์ ๋ํ ์ฝํ
์ธ (๋ฆฌ๋ทฐ, ์ค๋ช
)๊ฐ ํฌํจ๋์ด์ผ ํ๋ฉฐ, ์ฌ์ฉ์๋ ๋ฒํผ์ ํด๋ฆญํ์ฌ ์ต์ข
์ ํด์ฌ๋ก ์ด๋ํฉ๋๋ค.
์ ํ๋ช ์งง์ ์ฅ์ ์์ฝ
์ฌ๊ธฐ์ ์ ํ ํ๊ธฐ/์ฅ๋จ์ /๊ฐ๊ฒฉ ๋น๊ต ๊ฐ์ ์ ์๋ฏธํ ํ ์คํธ๊ฐ ๋ค์ด๊ฐ์ผ ํฉ๋๋ค. ๋จ์ ๋งํฌ๋ง ์๋ ํ์ด์ง๋ ์ ํ์ง ์ ํธ๊ฐ ๋ ์ ์์ต๋๋ค.
์ฟ ํก์์ ๋ณด๊ธฐ โถโป ์ ํด ๋งํฌ๋ฅผ ํตํด ๊ตฌ๋งค ์ ์ผ์ ์์๋ฃ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.
์ค๋ช :
- rel="sponsored": ์ ํด ๋งํฌ์์ ๊ฒ์์์ง์ ๋ช ํํ ์๋ฆฌ๋ ์ต์ ๊ถ์ฅ๊ฐ์ ๋๋ค.
- meta robots noindex๋ ์ด ์ค๊ฐ ํ์ด์ง๋ฅผ ๊ฒ์์์ง ์์ธ์์ ์ ์ธํ๊ณ ์ถ์ ๋๋ง ์ฌ์ฉํ์ธ์. (์์ธ ์ ์ธํ๋ฉด ํ์ด์ง ์์ฒด๊ฐ ๊ฒ์์ผ๋ก ์ ์ ๋์ง ์์.)
B) (๋ ๊ถ์ฅ) ์๋ JS ๋ฆฌ๋ค์ด๋ ํธ ์ฌ์ฉ์ ์ํธ์์ฉ ์์ด ์๋ ์ด๋ (์ฃผ์)
์๋์ผ๋ก ๋ฐ๋ก ์ด๋์ํค๋ฉด ๊ฒ์์์ง์ด ๊ทธ ๋์์ ์ธ์ํ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค(ํนํ ๊ตฌ๊ธ). ์ํ ๋ชฉ์ ์ผ๋ก๋ ์ํํฉ๋๋ค. ๊ทธ๋๋ ์ฐธ๊ณ ์ฉ:
// target.url ์ ์๋ฒ/ํ
ํ๋ฆฟ์์ ์ฑ์๋ฃ๋ ๋ฐฉ์์ผ๋ก ์ ๊ณต๋ ์ ์์
var target = { url: "https://link.coupang.com/a/cT6X94" };
// 1์ด ๋ค ์ด๋ (์์ ์ฆ์๋ ๊ฐ๋ฅ)
setTimeout(function(){
location.replace(target.url);
}, 1000);
C) ํ ํ์ด์ง์์ ๋ชจ๋ ์ ํด/์ํ ๋งํฌ๋ฅผ ๋ชจ์ ๊ด๋ฆฌ ( ์ฃผ์ ์ค๋ฆฝ)
์ค๊ฐ ๋๋ฉ ํ์ด์ง๋ฅผ ์ฌ๋ฌ ๊ฐ ๋ง๋ค๊ธฐ ํ๋ค์ด์, ํ ํ์ด์ง์์ ๋ชจ๋ ์ ํด/์ํ ๋งํฌ๋ฅผ ๋ชจ์ ๊ด๋ฆฌํ๋ ค๋ ์ํฉ์ด ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ์๋ ์ ํ์ง ์ํ์ ์ต์ํํ๋ฉด์ ์์ ํ๊ฒ ์ด์ํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
์ ๋ฆฌํ๋ฉด, ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ ํด์ํ ๋งํฌ๋ก ์ธํ ์ ํ์ง ๋ฌธ์ ๋ฅผ ์ต์ํํ๋ ค๋ฉด, JS ์๋ ๋ฆฌ๋ค์ด๋ ํธ๋ ์๋ฒ 302/301 ๋ฐฉ์ ๋ชจ๋ ์ํ๋๊ฐ ๋์ต๋๋ค.
์ฆ, ์๋ ์ด๋ ๋ฐฉ์์ ๋ค์ด๋ฒ ๊ฒ์์์ง ์ ์ฅ์์ ์ฌ์ฉ์์๊ฒ๋ง ๋ณด์ฌ์ฃผ๊ณ ๋ด์๊ฒ ์จ๊น์ผ๋ก ์ธ์๋ ์ ์์ด, ์ ํ์ง ์ ํธ๊ฐ ๋ ์ ์์ต๋๋ค.
์ํ ๋งํฌ ๋๋ฉ ํ์ด์ง์ ๊ธฐ๋ณธ ์์น
์๋ ๋ฆฌ๋ค์ด๋ ํธ ๊ธ์ง
- JS location.replace()๋ meta refresh ๊ฐ์ ์๋ ์ด๋์ ์ฌ์ฉํ๋ฉด ๋ค์ด๋ฒ๊ฐ ๋ด์ผ๋ก ์ธ์ ์ ์ ํ์ง ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค.
์ฌ์ฉ์ ํด๋ฆญ ๊ธฐ๋ฐ ์ด๋
- ๋งํฌ๋ ๋ฒํผ ๋๋ ํ ์คํธ ํด๋ฆญ ์ ์ด๋ํ๋๋ก ํฉ๋๋ค.
ํ๋ถํ ์ฝํ ์ธ ์ ๊ณต
- ๋งํฌ๋ง ๋์ดํ์ง ๋ง๊ณ , ๊ฐ ๋งํฌ์ ๋ํ ์ํ ์ค๋ช , ํ๊ธฐ, ์ฅ๋จ์ , ๊ฐ๊ฒฉ ๋น๊ต ๋ฑ์ ์ถฉ๋ถํ ์์ฑํฉ๋๋ค.
rel ์์ฑ ์ฌ์ฉ
- ์ ํด ๋งํฌ๋ ๋ฐ๋์ rel="sponsored noopener noreferrer"๋ฅผ ๋ฃ์ด ๊ฒ์์์ง์ ์ ํด์์ ๋ช ํํ ํ์ํฉ๋๋ค.
์ ํ์ noindex
- ์ด ํ์ด์ง๋ฅผ ๊ฒ์์์ง ์์ธ์์ ์ ์ธํ๊ณ ์ถ์ผ๋ฉด meta name="robots" content="noindex" ์ฌ์ฉ.
4. ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ๊ถ์ฅํ๋ ๋ฐฉ์
์๋ ์ด๋ ์์ด, ์ฌ์ฉ์ ํด๋ฆญ ๊ธฐ๋ฐ์ผ๋ก ๋งํฌ ์ฐ๊ฒฐ ์ด ๋ฐฉ๋ฒ์ด ๊ฐ์ฅ ์์ ํ๊ณ , ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์๋ ์ ํ์ง ์ํ ์์ด ์ด์ ๊ฐ๋ฅํฉ๋๋ค.
- ์ค๊ฐ ๋๋ฉ ํ์ด์ง(์ํ ์ค๋ช /๋ฆฌ๋ทฐ ํฌํจ) ์์ฑ
- CTA ๋ฒํผ์ผ๋ก ์ด๋
- ๋งํฌ์ rel="sponsored" ๋๋ rel="nofollow" ์ฌ์ฉ
- ํ์ํ๋ฉด ์ค๊ฐ ํ์ด์ง์ meta name="robots" content="noindex" ์ ์ฉ
์ด์ฒ๋ผ ์ค๊ฐ ๋๋ฉ ํ์ด์ง๋ฅผ ์ํ๋ณ๋ก ์ ์ํ์ฌ ๊ด๋ จ ์ฝํ ์ธ (๋ฆฌ๋ทฐ, ์ ๋ณด ๋ฑ)๋ฅผ ์ ์์ ์ผ๋ก ์ ๊ณตํ๊ณ , ์ฌ์ฉ์๊ฐ ๋ฒํผ์ด๋ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ์ํ์ผ๋ก ์ด๋ํ๋ ๋ฐฉ์์ด ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ๊ฐ์ฅ ๊ถ์ฅ๋๋ ๋ฐฉ๋ฒ์ ๋๋ค.
๊ทธ๋ฌ๋ ์ด ๋ฐฉ์์๋ ์ด๋ ค์ด ์ ๋ ์์ต๋๋ค.
์ฆ, ๊ด๋ จ ์ฝํ
์ธ ๋ฅผ ์ค๋ณต ์์ด ๊ฐ๊ฐ ์์ฑํด์ผ ํ๋ค๋ ์ ์
๋๋ค.
์๋ ๋ฐฉ๋ฒ์ ์๋ฒฝํ๊ฒ SEO์ ์ต์ ํ๋ ๋ฐฉ๋ฒ์ ์๋์ง๋ง, ์์์ ๋น๊ตํ ๋จ์ถ URL ์ฌ์ฉ ๋ฐฉ๋ฒ์ด๋ ๊ธฐํ ๋ฐฉ๋ฒ ์ค์์ ๊ฐ์ฅ ํจ์จ์ ์ด๊ณ ์๋์ ์ผ๋ก ์ํ์ด ์ ์ ๋ฐฉ์์
๋๋ค.
์ฆ, ํ ๊ฐ์ ํ์ด์ง์์ ์ฌ๋ฌ ๊ฐ์ ์ํ ๋งํฌ๋ฅผ ๊ด๋ฆฌํ ์ ์๋ ๋ฐฉ์์
๋๋ค.
4. ์ ํด ์ํ ๋งํฌ ๋๋ฉ ํ์ด์ง ์๋ฒ ํ์ฉ ๋ฐฉ๋ฒ
์๋ ๋ฐฉ๋ฒ์ํ ๊ฐ์ ๋๋ฉ ํ์ด์ง๋ฅผ ๋ง๋ค์ด, ์ด ํ์ด์ง์์ ๋ชจ๋ ์ธ๋ถ ๋งํฌ๋ฅผ์๋์ผ๋ก ์ํ ๋งํฌ๋ก ์ฐ๊ฒฐํ๋ ๋ฐฉ์์
๋๋ค.
์ด ๋ฐฉ๋ฒ์ ์ฅ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ํ ๋งํฌ๋ณ๋ก ์ฌ๋ฌ ๊ฐ์ ๋๋ฉ ํ์ด์ง๋ฅผ ๋ง๋ค ํ์ ์์ด ํ ๊ณณ์์ ๊ด๋ฆฌ ๊ฐ๋ฅ
- ์ํ ์ฝ๋๋ฅผ๋จ์ผ ํ์ผ์์ ๋ชจ๋ ๊ด๋ฆฌํ ์ ์์ด ๋ธ๋ก๊ทธ ์ด์ ํจ์จ์ฑ ํฅ์
- ๋งํฌ ๊ด๋ฆฌ์ ์ ๋ฐ์ดํธ๊ฐ ๊ฐํธํ๋ฉฐ ์ ์ง๋ณด์ ๋ถ๋ด ๊ฐ์
๊ธฐ์กด์์ง์ a ํด๋ฆญ ๋ฐฉ์๋์ ๋๋ฉ ํ์ด์ง์์ JavaScript location.replace()๋ฅผ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ํจ๊ณผ๊ฐ ์์ต๋๋ค.
- ๋ฐฉ๋ฌธ์๊ฐ ํ์ด์ง๋ฅผ ์ด์๋ง์ ์ฆ์ ๋์ URL๋ก ์ด๋
- ์ค๊ฐ ํ์ด์ง์์ ๋ถํ์ํ ํด๋ฆญ์ด๋ ๋ก๋ฉ ๋ฐ์ ๋ฐฉ์ง
- ๊ฒ์ ์์ง ๋ด์๊ฒ๋ํ์ด์ง ์ธ๋ฑ์ฑ ๋ฐฉ์ง(meta noindex, nofollow) ์ ์ฉ ๊ฐ๋ฅ
- ๊ธฐ์กด a ํด๋ฆญ ๋์ location.replace()๋ฅผ ๋ฐ๋ก ์ฌ์ฉํด ์ฆ์ ์ด๋ ๊ฐ๋ฅ

์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋ ํ์ฉ ๋๋ฉ ํ์ด์ง
โ ์ฃผ์
- JSON ํ์ผ ๊ฒฝ๋ก๋ ๋ฐ๋์ ์ค์ ์๋ฒ ๊ฒฝ๋ก์ ๋ง์ถฐ ์์ ํด์ผ ํฉ๋๋ค.
- ์ผ๋ถ ๋ธ๋ก๊ทธ ํ๋ซํผ(Tistory ๋ฑ)์์๋ ์ธ๋ถ JSON ํ์ผ fetch๊ฐ ๋ณด์์ ์ ํ๋ ์ ์์ต๋๋ค.
์ด๋ฐ ๊ฒฝ์ฐ, JS ํ์ผ๋ก ๋ฐฐ์ด์ exportํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค.
1. ์ฌ์ฉ์ ์ ๊ทผ์ฑ์ ์ํ ์๋ด๋ฌธ๊ตฌ ์คํ์ผ ์์
/* ๊ธฐ์กด ํ์ด์ง ์์ ์จ๊ธฐ๊ธฐ (๋ฉ์์ง๋ ์ ์ธ) */
#header, #aside, #footer, .container_postbtn, .post-cover {
display: none !important;
}
/* ์๋จ ๊ณ ์ ๋ฉ์์ง ์คํ์ผ๋ง */
#redirect-message {
position: fixed;
top: 20px;
left: 50%;
transform: translateX(-50%);
font-size: 36px;
font-weight: bold;
color: #FF4500;
background: rgba(255,255,255,0.9);
padding: 10px 20px;
border-radius: 8px;
z-index: 9999;
animation: blink 1s infinite;
text-align: center;
}
@keyframes blink {
0%, 50%, 100% { opacity: 1; }
25%, 75% { opacity: 0.2; }
}
2. JavaScript ์ฝ๋
์๋ ์ฝ๋๋ ๋๋ฉ ํ์ด์ง ๋ณธ๋ฌธ์ ์ฝ์ ํ๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ๋๋ค.
(async function(){
try {
// 1. head์ ํญ์ noindex, nofollow ์ถ๊ฐ
var metaRobots = document.createElement('meta');
metaRobots.name = 'robots';
metaRobots.content = 'noindex, nofollow';
document.head.appendChild(metaRobots);
// 2. URL ํ๋ผ๋ฏธํฐ ๊ฐ์ ธ์ค๊ธฐ
var params = new URLSearchParams(window.location.search);
var id = params.get('id');
if (!id) return;
// 3. JSON์์ ๋ฆฌ๋๋ ํธ ๋์ ์ฐพ๊ธฐ
const response = await fetch('https://tistory1.daumcdn.net/tistory/7047288/skin/images/redirects.json');
if (!response.ok) throw new Error('JSON load failed');
const redirects = await response.json();
var target = redirects.find(r = r.id === id); // 'r = r.id === id' ๋ก ์์
if (!target) return;
// 4. ์ฃผ์ ๊ฒ์์์ง ๋ฐ ๊ด๊ณ /ํธ๋ํน ๋ด ๊ฐ์ง
var ua = navigator.userAgent.toLowerCase();
var botPattern = /googlebot|bingbot|yandex|baiduspider|duckduckbot|slurp|facebookexternalhit|twitterbot|linkedinbot|embedly|quora link preview|pinterest|slackbot|discordbot|applebot|msnbot|adsbot-google|mediapartners-google/i;
var isBot = botPattern.test(ua);
// 5. ์ผ๋ฐ ๋ฐฉ๋ฌธ์ ์ฆ์ ๋ฆฌ๋๋ ํธ
if (!isBot) {
location.replace(target.url); // ๋ฐ๋ก ์ด๋
}
} catch(e) {
console.error('redirect error', e);
}
})();
๋์ ์ค๋ช
- id๊ฐ ์์ผ๋ฉด ์ข ๋ฃํฉ๋๋ค.
- JSON ๋ฐฐ์ด์์ ํ์ฌ id์ ํด๋นํ๋ ํญ๋ชฉ์ ์ฐพ์ต๋๋ค.
- ์ผ๋ฐ ๋ฐฉ๋ฌธ์๋ ์ฆ์ location.replace()๋ก ํด๋น ์ํ ๋งํฌ๋ก ์ด๋ํฉ๋๋ค.
- ๊ฒ์ ๋ด์ ๋ฆฌ๋๋ ํธ๋์ง ์๊ณ , **meta name="robots" content="noindex, nofollow"**๊ฐ ๋์ ์ผ๋ก ์ฝ์ ๋ฉ๋๋ค.
- ๊ฒ์ ์์ง์ ํ์ด์ง๋ฅผ ์์ธํ์ง ์์ผ๋ฉฐ ๋งํฌ๋ ๋ฐ๋ผ๊ฐ์ง ์์ต๋๋ค.
- ํ์ด์ง๊ฐ ์ด๋ฆฌ๋ฉด ์ผ๋ฐ ์ฌ์ฉ์๋ง ํด๋น URL๋ก ์ด๋ํฉ๋๋ค.
์ด์ ํ์ด์ง๊ฐ ์ด๋ฆฌ๋ฉด ์ฆ์ ๋์ URL๋ก ์ด๋ํฉ๋๋ค.๋๋ถ์ด ์์ ์ฝ๋์ ์ฌ์ฉ์ ์ด๋ฒคํธ ์ฝ๋๋ฅผ ํ์ฉํด์ ๋ฐ๋ก ์ฐ๊ฒฐํ์ง ์๊ณ ์ฌ์ฉ์์ ์ํจ ์์ฉ์ผ๋ก ์ ๋ํ๋ ๊ฒ์ด ๊ฐ์ฅ ์์ ํฉ๋๋ค.
3. ์ํ ๋งํฌ์ฉ ์๋ฒ ๋งํฌ ์ฐ๋ ์ธ๋ถ ๋ฐฐ์ด ํ์ผ (JSON)
์ด ํ์ผ์ ์ผ๋ฐ ๋งํฌ์ ์ ํด ์ํ ๋งํฌ๋ฅผ ์ฐ๊ฒฐํ๋ ์ญํ ์ ํฉ๋๋ค.
์ฆ, ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์ ์ผ๋ฐ ๋งํฌ๋ฅผ ํด๋ฆญํ๋ฉด ๋๋ฉ ํ์ด์ง์์ ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ JSON ํ์ผ์ ๋ถ๋ฌ์ ํด๋น ์ํ ๋งํฌ๋ก ์๋ ์ฐ๊ฒฐํฉ๋๋ค.
์ฌ์ฉ ๋ฐฉ๋ฒ
- ๋ฉ๋ชจ์ฅ ๋๋ ํ ์คํธ ์๋ํฐ๋ฅผ ์ฌ์ฉํ์ฌ JSON ํ์ผ ์์ฑ
- ์๋ฒ์ ์ ๋ก๋
- ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋์์ fetch ๊ฒฝ๋ก๋ฅผ ์ ๋ก๋ํ JSON ํ์ผ ๊ฒฝ๋ก๋ก ๋ณ๊ฒฝ
์์ URL
- example.com/page?id=1
- example.com/page?id=2
- example.com/page?id=3
JSON ์์ (redirects.json)
[
{ "id": "1", "url": "https://link.coupang.com/a/cT0x1q", "rel": "nofollow", "label": "๊ด๊ณ ๋งํฌ 1" },
{ "id": "2", "url": "https://link.coupang.com/a/cTZ6gg", "rel": "nofollow", "label": "๊ด๊ณ ๋งํฌ 2" },
{ "id": "3", "url": "https://link.coupang.com/a/cT1234", "rel": "nofollow", "label": "๊ด๊ณ ๋งํฌ 3" }
]
ํน์ง
- JSON ๋ฐฐ์ด์ ์์ ํ ๋๋ redirects.json๋ง ์์ ํ๋ฉด ๋๋ฏ๋ก ๊ด๋ฆฌ๊ฐ ๊ฐํธํฉ๋๋ค.
- ๊ฒ์ ๋ด์ ๋ฆฌ๋๋ ํธ๋์ง ์๊ณ , meta name="robots" content="noindex,nofollow"๊ฐ ์ ์ฉ๋ฉ๋๋ค.
- ์ผ๋ฐ ๋ฐฉ๋ฌธ์๋ ํ์ด์ง ์ ์ ์ ํด๋น ์ํ ๋งํฌ๋ก ์ฆ์ ์ด๋ํฉ๋๋ค.
- ๋ธ๋ก๊ทธ ํ๋ซํผ(Tistory ๋ฑ)์์๋ ์ธ๋ถ JSON fetch๊ฐ ๊ฐ๋ฅํ๋ฉด ๋ฐ๋ก ์ ์ฉ ๊ฐ๋ฅํฉ๋๋ค.
๋์ ๋ฐฉ์
- navigator.userAgent ๋ฌธ์์ด์ ๊ธฐ๋ฐ์ผ๋ก ๊ฒ์ ๋ด๊ณผ ๊ด๊ณ /ํธ๋ํน ๋ด์ ๊ฐ์งํฉ๋๋ค.
- isBot = true์ด๋ฉด if (!isBot) ์กฐ๊ฑด์ ํต๊ณผํ์ง ์์ผ๋ฏ๋ก ๋ฆฌ๋๋ ํธ๊ฐ ์คํ๋์ง ์์ต๋๋ค.
- ๋์ , head์ meta name="robots" content="noindex,nofollow"๊ฐ ์ฝ์ ๋์ด ๊ฒ์ ๋ด์ด ํ์ด์ง๋ฅผ ์์ธํ์ง ์์ต๋๋ค.
- Google, Bing, Yandex, Baidu ๋ฑ ์ฃผ์ ๊ฒ์ ๋ด์ ๋ฆฌ๋๋ ํธ๋์ง ์์ผ๋ฉฐ, ์ผ๋ฐ ์ฌ์ฉ์๋ง URL๋ก ์ด๋ํฉ๋๋ค.
- ๋จ, ์ฌ์ฉ์ ์์ด์ ํธ๋ฅผ ์ง์ ์์กฐํ ๋ด์ ๊ฐ์ง๋์ง ์์ ์ ์์ต๋๋ค.
ํต์ฌ ์ ๋ต
- ํฌ๋กค๋ฌ ๊ฐ์ง
- User-Agent ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ๊ธ๋ด, ๋ค์ด๋ฒ๋ด, Bing, Yandex, Facebook, Discord ๋ฑ ์ฃผ์ ๋ด ์๋ณ
- ์์ : /googlebot|bingbot|yandex|baiduspider|slurp|facebookexternalhit/i
- ํฌ๋กค๋ฌ์ ์ฝํ
์ธ ๋
ธ์ถ ์ฐจ๋จ
- meta name="robots" content="noindex, nofollow" ์ถ๊ฐ ์์ธ ์ฐจ๋จ
- ๋ฆฌ๋ค์ด๋ ํธ ์ฝ๋๋ ํฌ๋กค๋ฌ์๋ ์คํ๋์ง ์๊ฒ ์ฒ๋ฆฌ
- ์ผ๋ฐ ์ฌ์ฉ์ ์๋ ๋ฆฌ๋ค์ด๋ ํธ
- ํ์ด์ง ๋ก๋ ํ ์งง๊ฒ(0.5~1์ด ์ด์ ๊ถ์ฅ) ์ด๋
- ์ด๋ฒคํธ(์คํฌ๋กค/ํค๋ณด๋/๋ง์ฐ์ค) ๊ฐ์ง๋ก ์ฆ์ ์ด๋ ๊ฐ๋ฅ
์ด๋ฒ ๊ธ์์๋ ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ฟ ํก ํํธ๋์ค ๋ฑ ์ ํด ๋ง์ผํ ๋งํฌ๋ฅผ ์ฌ์ฉํ ๋ ๋ฐ์ํ ์ ์๋ ์ ํ์ง ๋ฌธ์ ์ ์ด๋ฅผ ์์ ํ๊ฒ ์ด์ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ดํด๋ณด์์ต๋๋ค. ๋จ์ํ ๋งํฌ๋ฅผ ์ฝ์ ํ๊ฑฐ๋ ์๋ ๋ฆฌ๋ค์ด๋ ํธ๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์์ ๊ฒ์ ์์ง์ด ํ์ด์ง๋ฅผ ์ธ์ํ๋ ๊ณผ์ ์์ ์ ํ์ง ์ ํธ๋ก ์์ฉํ ์ ์์ผ๋ฏ๋ก ์ฃผ์๊ฐ ํ์ํฉ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ์ค๊ฐ ๋๋ฉ ํ์ด์ง์ ํด๋ฆญ ๊ธฐ๋ฐ ์ด๋ ๋ฐฉ์์ ํ์ฉํ๋ฉด ์ ํด ๋ง์ผํ ๋งํฌ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ฉด์๋ ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ ํ์ง๋ก ๋ถ๋ฅ๋ ์ํ์ ์ต์ํํ ์ ์์ต๋๋ค.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์์ ์ฟ ํกํํธ๋์ค ์ ํด ๋งํฌ ์ฌ์ฉ ์ ์ ์ ํ์ง ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋์?
๋จ์ํ a ํ๊ทธ ํด๋ฆญ ๋ฐฉ์์ด๋ ์๋ JS ๋ฆฌ๋๋ ํธ ๋ฑ์ผ๋ก ์ ํด ๋งํฌ๋ฅผ ์ฐ๊ฒฐํ๋ฉด, ๊ฒ์ ์์ง ๋ด์ด ๋งํฌ๋ฅผ ๋ฐ๋ผ๊ฐ๊ฑฐ๋ ํ์ด์ง๋ฅผ ์ธ๋ฑ์ฑํ ๋ ์ ํ์ง ์ ํธ๋ก ์ธ์ํ ์ ์์ต๋๋ค. ๋ฐ๋ณต ๋งํฌ, ํด๋ฆญ ์ ๋ ๋ฌธ๊ตฌ, ์ธ๋ถ ๋ฆฌ๋๋ ํธ ๋ค์๋ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์์ ๋ถ์ ์ ์ผ๋ก ํ๋จ๋ฉ๋๋ค.
์ ํด ๋งํฌ๋ฅผ ์์ ํ๊ฒ ์ด์ํ๋ ค๋ฉด ์ด๋ค ๋ฆฌ๋ค์ด๋ ํธ ๋ฐฉ์์ ์ฌ์ฉํด์ผ ํ๋์?
์๋ฒ 302/301 ๋ฆฌ๋ค์ด๋ ํธ๋ ๊ฒ์ ์์ง์ด ์ต์ข ๋ชฉ์ ์ง๋ฅผ ๋ฐ๋ก ํ์ ํ๋ฏ๋ก ์ํ์ฉ์ผ๋ก ๋ถ์ ํฉํ๋ฉฐ, JS ์๋ ๋ฆฌ๋ค์ด๋ ํธ๋ ๊ฒ์ ์์ง๋ง๋ค ์ธ์๋ฅ ์ด ๋ค๋ฆ ๋๋ค. ๊ฐ์ฅ ์์ ํ ๋ฐฉ๋ฒ์ ์ค๊ฐ ๋๋ฉ ํ์ด์ง๋ฅผ ๋ง๋ค๊ณ , ์ฌ์ฉ์ ํด๋ฆญ ๊ธฐ๋ฐ์ผ๋ก ๋งํฌ๋ฅผ ์ฐ๊ฒฐํ๋ฉฐ, rel="sponsored" ์์ฑ์ ์ฌ์ฉํ๋ ๋ฐฉ์์ ๋๋ค. ํ์ ์ meta noindex๋ฅผ ์ ์ฉํด ์์ธ ์ ์ธ๋ ๊ฐ๋ฅํฉ๋๋ค.
๋ธ๋ก๊ทธ ์ด์ ํจ์จ๊ณผ ์ ํ์ง ๋ฐฉ์ง๋ฅผ ๋์์ ๋ฌ์ฑํ๋ ๋ฐฉ๋ฒ์?
ํ ๊ฐ์ ๋๋ฉ ํ์ด์ง์์ ์ฌ๋ฌ ์ ํด ๋งํฌ๋ฅผ JSON ๋ฑ ์ธ๋ถ ๋ฐฐ์ด ํ์ผ๋ก ๊ด๋ฆฌํ๊ณ , ์ผ๋ฐ ๋ฐฉ๋ฌธ์๋ง ํด๋ฆญ ์ ๋์ URL๋ก ์ด๋ํ๋๋ก ์ค์ ํ๋ฉด ํจ์จ์ ์ ๋๋ค. ๊ฒ์ ๋ด์ meta noindex, nofollow๊ฐ ์ ์ฉ๋์ด ์์ธ๋์ง ์์ผ๋ฏ๋ก, ์ ํ์ง ์ํ์ ์ต์ํํ๋ฉด์ ์ ํด ๋ง์ผํ ๋งํฌ๋ฅผ ์์ ํ๊ฒ ์ด์ํ ์ ์์ต๋๋ค.