ํ”„๋กœ์ ํŠธ

[Next.js] SEO ์ตœ์ ํ™”ํ•˜๊ธฐ

Yuuuki 2024. 4. 29. 18:09

 

SSR์™€ CSR์˜ SEO

 

CSR (React.js)

 

CSR(ClientSide Rendering)์˜ ๊ฒฝ์šฐ ์ดˆ๊ธฐ์— ๋นˆ html ๋ฌธ์„œ๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ด‡์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ธฐ ์–ด๋ ต๊ธฐ๋•Œ๋ฌธ์— SEO์— ๋ถˆ๋ฆฌํ•˜๋‹ค. 

 

 

SSR(Next.js)

ํ•˜์ง€๋งŒ, SSR(ServerSide Rendering)์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญํ•œ ํŽ˜์ด์ง€๋ฅผ ์„œ๋ฒ„์—์„œ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•ด ๋ธŒ๋ผ์šฐ์ €์— ๋ณด๋‚ด๋Š” ๋ฐฉ์‹์œผ๋กœ, ์ด๋ฏธ ์„œ๋ฒ„์ชฝ์—์„œ ๋งŒ๋“ค์–ด์ง„ ์™„์„ฑ๋œ html์„ ๊ฒ€์ƒ‰์—”์ง„๋“ค์ด ํฌ๋กค๋ง์ด ๊ฐ€๋Šฅํ•˜๊ธฐ๋•Œ๋ฌธ์— ๊ฒ€์ƒ‰์— ์œ ๋ฆฌํ•ด์ง„๋‹ค.

 

SEO ์ง„๋‹จ

โœ… SSR์˜ ์žฅ์ ์ธ SEO ์„ฑ๋Šฅ ์ตœ์ ํ™” ์ž‘์—…ํ•˜๊ธฐ ์ „, SEO checkup์„ ํ•ด๋ณด์•˜๋‹ค.

https://pagespeed.web.dev/analysis/https-balanco-vercel-app/hxv2uh2yl9?form_factor=desktop

 

 

pagespeed๊ฐ€ ๋ฌด์Šจ ๊ธฐ์ค€์ธ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ, pagespeed์—์„œ ์ฒ˜์Œ ๊ฒ€์‚ฌํ•ด๋ณธ๊ฒฐ๊ณผ ์•„๋ฌด๋Ÿฐ ์ž‘์—…์„ ์•ˆํ–ˆ๋Š”๋ฐ ๋„ˆ๋ฌด ๋†’์€ ์ ์ˆ˜๊ฐ€ ๋‚˜์˜ค๊ธธ๋ž˜ ์ด์ƒํ•˜๋‹ค ์‹ถ์–ด ๋‹ค๋ฅธ ์‚ฌ์ดํŠธ๋กœ SEO ์ง„๋‹จ์„ ํ•ด๋ณด์•˜๋‹ค.

 

PageSpeed Insights

์˜ฌ๋ฐ”๋ฅธ URL์„ ์ž…๋ ฅํ•˜์„ธ์š”.

pagespeed.web.dev

 

์šฐ์™• ๊ต‰์žฅํžˆ ์ž์„ธํ•˜๊ฒŒ ๋ถ„์„ํ•ด์„œ ์•Œ๋ ค์ค€๋‹ค!

 

 

function Heading({ children }: { children: React.ReactNode }) {
  return (
    <h1 className="font-bold text-3xl sm-max:text-2xl text-center mb-12 sm-max:mb-6">
      {children}
    </h1>
  );
}

export default Heading;

๊ฐ page์—์„œ heading ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ ํŽ˜์ด์ง€์˜ ํƒ€์ดํ‹€๋กœ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, h2ํƒœ๊ทธ์—์„œ h1ํƒœ๊ทธ๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ์—ˆ๋‹ค.

 

Robots.txt

 

robots.txt ํŒŒ์ผ์€ ๊ฒ€์ƒ‰ ์—”์ง„ ๋กœ๋ด‡ ๋˜๋Š” ํฌ๋กค๋Ÿฌ์—๊ฒŒ ์›น ์‚ฌ์ดํŠธ์˜ ์–ด๋–ค ๋ถ€๋ถ„์„ ํฌ๋กค๋งํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์ง€์นจ์„ ์ œ๊ณตํ•˜๋Š” ํ…์ŠคํŠธ ํŒŒ์ผ๋กœ, ๊ฒ€์ƒ‰ ์—”์ง„์ด ์‚ฌ์ดํŠธ๋ฅผ ๋ฐฉ๋ฌธํ•  ๋•Œ ์ฒซ ๋ฒˆ์งธ๋กœ ํ™•์ธํ•˜๋Š” ํŒŒ์ผ ์ค‘ ํ•˜๋‚˜๋ผ๊ณ  ํ•œ๋‹ค.

 

  • ๊ฒ€์ƒ‰ ์—”์ง„ ํฌ๋กค๋Ÿฌ ์ œ์–ด: robots.txt ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ๋””๋ ‰ํ† ๋ฆฌ ๋˜๋Š” ํŒŒ์ผ์„ ๊ฒ€์ƒ‰ ์—”์ง„ ํฌ๋กค๋Ÿฌ์—๊ฒŒ ์ˆจ๊ธฐ๊ฑฐ๋‚˜ ํ—ˆ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ๋ฅผ ์œ„ํ•œ ์ค‘์š”ํ•œ ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋ณดํ˜ธํ•˜๊ฑฐ๋‚˜, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์— ํ‘œ์‹œ๋˜๊ธฐ๋ฅผ ์›์น˜ ์•Š๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ์ˆจ๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํฌ๋กค๋ง ์ตœ์ ํ™”: ์›น ์‚ฌ์ดํŠธ์˜ ํฌ๊ธฐ๊ฐ€ ํฌ๊ฑฐ๋‚˜ ์ผ๋ถ€ ํŽ˜์ด์ง€๊ฐ€ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์— ํ‘œ์‹œ๋˜๊ธฐ๋ฅผ ์›์น˜ ์•Š์„ ๋•Œ, robots.txt ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ๋””๋ ‰ํ† ๋ฆฌ๋‚˜ URL์„ ํฌ๋กค๋ง์—์„œ ์ œ์™ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฒ€์ƒ‰ ์—”์ง„ ํฌ๋กค๋Ÿฌ๊ฐ€ ๋ถˆํ•„์š”ํ•œ ํŽ˜์ด์ง€๋ฅผ ํฌ๋กค๋งํ•˜์ง€ ์•Š๊ณ , ๋ฆฌ์†Œ์Šค๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
User-agent: * //๋กœ๋ด‡ ๋ฐฐ์ œ ํ”„๋กœํ† ์ฝœ์˜ ๋ฒ„์ „
Disallow: //๋ชจ๋“  ๊ฒฝ๋กœ ํ—ˆ์šฉ (๋กœ๋ด‡์ด ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•  URL ์ง€์ •)

 

 

 

https://developers.google.com/search/docs/crawling-indexing/robots/create-robots-txt?hl=ko

 

robots.txt ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ ๋ฐ ์ œ์ถœ | Google ๊ฒ€์ƒ‰ ์„ผํ„ฐ  |  ๋ฌธ์„œ  |  Google for Developers

robots.txt ํŒŒ์ผ์€ ์‚ฌ์ดํŠธ์˜ ๋ฃจํŠธ์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค. robots.txt ํŒŒ์ผ์„ ๋งŒ๋“ค๊ณ  ์˜ˆ๋ฅผ ํ™•์ธํ•˜๋ฉฐ robots.txt ๊ทœ์น™์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์„ธ์š”.

developers.google.com

 

 

siteMap

siteMap์€ ์›น ์‚ฌ์ดํŠธ ๋‚ด์˜ ํŽ˜์ด์ง€,๋™์˜์ƒ,์ด๋ฏธ์ง€ ๋“ฑ ์ฝ˜ํ…์ธ ์˜ ๋ชฉ๋ก๋“ค์„ ๋‚˜์—ดํ•˜๊ณ  ๊ทธ ๊ด€๊ณ„์˜ ์ •๋ณด๋“ค์„ ๊ณ„์ธต์ ์ด๊ณ  ์ฒด๊ณ„์ ์œผ๋กœ ๋ช…์‹œํ•˜๋Š”๊ฒƒ์„ ๋งํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ตฌ๊ธ€๊ฐ™์€ ์ฃผ์š” ๊ฒ€์ƒ‰์—”์ง„๋“ค์ด ํ•ด๋‹น ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ข€ ๋” ํšจ์œจ์ ์œผ๋กœ ํฌ๋กค๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š”๋‹ค๊ณ  ํ•œ๋‹ค.

ํ•˜์ง€๋งŒ ์‚ฌ์ดํŠธ๋งต์„ ์ถ”๊ฐ€ํ•œ๋‹ค๊ณ ํ•ด์„œ ์ƒ๊ฐ๋ณด๋‹ค SEOํšจ๊ณผ๊ฐ€ ํฌ์ง„ ์•Š๋‹ค๊ณ  ํ•˜๋Š”๋ฐ, ๊ธฐ๋ณธ์ ์œผ๋กœ ํŽ˜์ด์ง€ ๊ตฌ์กฐ์™€ ๋งํฌ๊ด€๊ณ„๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์ž˜ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค๋ฉด, ๊ตณ์ด ์‚ฌ์ดํŠธ๋งต ์—†์ด๋„ ๊ฒ€์ƒ‰์—”์ง„ ๋Œ€๋ถ€๋ถ„์ด ํŽ˜์ด์ง€๋ฅผ ์ฐพ์•„ ํฌ๋กค๋ง ๋ฐ ์ธ๋ฑ์‹ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ•œ๋‹ค.

 

 

siteMap์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ

  • ๊ทœ๋ชจ๊ฐ€ ํฐ ์‚ฌ์ดํŠธ
  • ์—ฐ๊ฒฐ๋˜๋Š” ์™ธ๋ถ€ ๋งํฌ๊ฐ€ ๋งŽ์ง€์•Š์€ ์‚ฌ์ดํŠธ
  • ๋ฏธ๋””์–ด ์ฝ˜ํ…์ธ (๋™์˜์ƒ, ์ด๋ฏธ์ง€)๊ฐ€ ๋งŽ๊ฑฐ๋‚˜ ๋‰ด์Šค์— ๋…ธ์ถœ๋˜๋Š” ์‚ฌ์ดํŠธ

 

siteMap์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ

  • ๊ทœ๋ชจ๊ฐ€ ์ž‘์€ ์‚ฌ์ดํŠธ
  • ๋‚ด๋ถ€์ ์œผ๋กœ ๋งํฌ๊ด€๊ณ„๊ฐ€ ๊ธด๋ฐ€ํ•˜๊ฒŒ ๊ตฌ์„ฑ๋œ ์‚ฌ์ดํŠธ
  • ๋…ธ์ถœ ๋ฏธ๋””์–ด ์ฝ˜ํ…์ธ ๊ฐ€ ๋งŒํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ์—†๋Š” ์‚ฌ์ดํŠธ

 

https://velog.io/@sejinkim/%EC%82%AC%EC%9D%B4%ED%8A%B8%EB%A7%B5-SEO-%EA%B0%80%EC%9D%B4%EB%93%9C

 

์‚ฌ์ดํŠธ๋งต SEO ๊ฐ€์ด๋“œ

๊ฒ€์ƒ‰ ์—”์ง„ ์ตœ์ ํ™”(SEO)์˜ ๊ธฐ๋ณธ, ์‚ฌ์ดํŠธ๋งต์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ๋‚ด์šฉ์„ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

velog.io

 

 

 

https://velog.io/@suyeon9456/%EA%B2%80%EC%83%89%EC%97%94%EC%A7%84%EC%B5%9C%EC%A0%81%ED%99%94SEO-%EC%95%8C%EC%95%84%EB%B3%B4%EA%B8%B0-with-%EA%B5%AC%EA%B8%80%EC%95%A0%EB%84%90%EB%A6%AC%ED%8B%B1%EC%8A%A4

 

๊ฒ€์ƒ‰์—”์ง„์ตœ์ ํ™”(SEO) ์•Œ์•„๋ณด๋ฉฐ ์ ์šฉํ•˜๊ธฐ with ๊ตฌ๊ธ€์• ๋„๋ฆฌํ‹ฑ์Šค

๐Ÿ”Ž SEO(Search Engine Optimization)๋Š” ๋ฌด์—‡์ผ๊นŒ? SEO๋Š” ์šฐ๋ฆฌ๊ฐ€ ๋งŒ๋“  ์›น ์‚ฌ์ดํŠธ๋‚˜ ์›น ํŽ˜์ด์ง€๋ฅผ ์ตœ์ ํ™”ํ•˜์—ฌ ๊ตฌ๊ธ€๊ณผ ๊ฐ™์€ ๊ฒ€์ƒ‰ ์‚ฌ์ดํŠธ์—์„œ ๋” ๋†’์€ ์œ„์น˜์— ์œ„์น˜ํ•˜๊ธฐ ์œ„ํ•œ ์ž‘์—…์ด๋‹ค. ์ฆ‰, ์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋– ํ•œ ๊ฒƒ

velog.io

 

Google Analytics

์›น ์‚ฌ์ดํŠธ์˜ ๋ฐฉ๋ฌธ์ž ํ–‰๋™๊ณผ ์„ฑ๊ณผ๋ฅผ ์ถ”์ ํ•˜๊ณ  ๋ถ„์„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์›น ๋ถ„์„ ๋„๊ตฌ๋กœ,

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

 

 

 

Favicon

favicon ๋˜ํ•œ SEO์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์š”์†Œ์ž„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.