15. ์ธ์์ ๋ด ์น์ฌ์ดํธ๋ฅผ ์๋ฆฌ๋ค: SEO ์ต์ ํ์ ๊ตฌ๊ธ ์์น ์ฝ์, ๊ทธ๋ฆฌ๊ณ ์ต์ข ํ๊ณ ๋ก
๋ค์ด๊ฐ๋ฉฐ: ์ง์ ๋ค ์ง์๋๋ฐ, ์ ์๋ฌด๋ ์ ์ฌ๊น?
๋๊ธ ์์คํ ์ ์คํธ ๋๋ฐฐ ๋ฐฉ์ง(Rate Limit)๊น์ง ์ ์ฉํ๊ณ ๋๋, ์ ๋ฐฉ๊ตฌ์ ๊ตฌํ ๋ ธํธ๋ถ์์ ๋์๊ฐ๊ณ ์๋ ์ปค๋ฎค๋ํฐ ์น์ฌ์ดํธ๋ ๊ธฐ์ ์ ์ผ๋ก ์ ๋ฒ ์๋ฒฝํ ํํ๋ฅผ ๊ฐ์ถ๊ฒ ๋์์ต๋๋ค.
๊ฐ์กฑ๊ณผ ์ง์ธ๋ค์๊ฒ ๋งํฌ๋ฅผ ๋๋ ค ๊ฐ์ ์ ์ํค๊ณ ๋ฉฐ์น ์ ํ๋ญํ๊ฒ ์ง์ผ๋ณด์์ฃ . ๊ทธ๋ฐ๋ฐ ๋ฌธ๋ ๋ผ์ํ ํ์ค์ ๋ง์ฃผํ์ต๋๋ค. ์ง์ธ๋ค์ ์ ์ธํ๊ณ ๋, ๊ตฌ๊ธ์ด๋ ๋ค์ด๋ฒ ๊ฒ์์ ํตํด ์ ์น์ฌ์ดํธ์ ์๋ฐ์ ์ผ๋ก ๋ค์ด์ค๋ ์์ ๋ฐฉ๋ฌธ์๊ฐ '๋จ ํ ๋ช ๋' ์๋ค๋ ์ฌ์ค์ด์์ต๋๋ค.
๋น์ ํ์๋ฉด ์ ๋ ์ฐ์ ๊น์ ๊ณณ์ ์์ฒญ๋๊ฒ ํ๋ คํ๊ณ ์์ ์นดํ๋ฅผ ์ง์ด๋๊ณ , ์ฐ ๋ฐ์ ํ์งํ ํ๋ ์ธ์๋์ง ์์ ์ฑ ์๋์ด ์ค๊ธฐ๋ง์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์๋ ๊ฒ์ ๋๋ค. ๊ตฌ๊ธ์ด๋ผ๋ ๊ฑฐ๋ํ ๊ฒ์ ์์ง์๊ฒ "์ฌ๊ธฐ ๋ด ์น์ฌ์ดํธ๊ฐ ์์ผ๋ ์ ๋ฐ ์์ ๊ฐ์ ธ๊ฐ ์ฃผ์ธ์!"๋ผ๊ณ ์๋ฆฌ์น๊ณ ์ง๋๋ฅผ ์ฅ์ฌ์ฃผ๋ ์์ , ๋ฐ๋ก **SEO(๊ฒ์์์ง ์ต์ ํ)**์ ์์น ์ฝ์(Search Console) ๋ฑ๋ก์ด ์ ์คํ ์์ ์ด์์ต๋๋ค.
1. ๋ก๋ด์ ์ํ ์น์ ํ ์๋ด์: ๋ฉํ ํ๊ทธ์ robots.txt
๊ฐ์ฅ ๋จผ์ ํ ์ผ์ ๊ตฌ๊ธ์ ๊ฒ์ ๋ก๋ด(ํฌ๋กค๋ฌ)์ด ์ ์ฌ์ดํธ์ ๋ฐฉ๋ฌธํ์ ๋, ์ด ์ฌ์ดํธ๊ฐ ๋ญ ํ๋ ๊ณณ์ธ์ง ์ฝ๊ฒ ํ์ ํ ์ ์๋๋ก '๋ช ํจ'์ ๋ฌ์์ฃผ๋ ์์ ์ด์์ต๋๋ค.
FastAPI ๋ฐฑ์๋์ ์ฐ๊ฒฐ๋ Jinja2์ <code>base.html</code> (๋ชจ๋ ํ์ด์ง์ ๋ผ๋๊ฐ ๋๋ ํ์ผ) ์๋จ <code><head></code> ๊ตฌ์ญ์ ์ด๊ณ , ๊ทธ๋์ ์ ๊ฒฝ ์ฐ์ง ์์๋ **๋ฉํ ํ๊ทธ(Meta Tag)**๋ค์ ์ ์ฑ์ค๋ฝ๊ฒ ์ฑ์ ๋ฃ์์ต๋๋ค. ์ฌ์ดํธ์ ์ ๋ชฉ(<code><title></code>), ์ฌ์ดํธ๊ฐ ๋ค๋ฃจ๋ ํต์ฌ ์ฃผ์ ์ ์ค๋ช (<code><meta name="description"></code>), ๊ทธ๋ฆฌ๊ณ ์ฌ๋๋ค์ด ์นด์นด์คํก์ด๋ SNS๋ก ๋งํฌ๋ฅผ ๊ณต์ ํ์ ๋ ์์๊ฒ ๋จ๋๋ก ๋๋ ์คํ๊ทธ๋ํ(<code><meta property="og:..."></code>) ํ๊ทธ๊น์ง ๋นํ์์ด ์์ฑํ์ฃ .
๊ทธ๋ฆฌ๊ณ ํ๋ก์ ํธ ์ต์๋จ ํด๋์ **<code>robots.txt</code>**๋ผ๋ ์์ฃผ ์์ ๋ฉ๋ชจ์ฅ ํ์ผ์ ํ๋ ๋ง๋ค์์ต๋๋ค. ์ฌ๊ธฐ์ <code>User-agent: *</code>, <code>Allow: /</code> ๋ผ๊ณ ๋จ ๋ ์ค์ ์ ์ด ์๋ฒ์ ์ฌ๋ ธ์ต๋๋ค. ํด์ํ์๋ฉด "์ธ์์ ๋ชจ๋ ๊ฒ์ ๋ก๋ด๋ค์, ๋ด ์น์ฌ์ดํธ์ ๋ชจ๋ ํ์ด์ง๋ฅผ ๋ง์๊ป ๊ธ์ด๊ฐ๋ ์ข์!"๋ผ๋ ์์ฃผ ์น์ ํ ํ์ ์ธ์ฌ๋ง์ ๋๋ค.
2. ๋ด ์น์ฌ์ดํธ์ ์กฑ๋ณด๋ฅผ ๋ฐ์น๋ค: Sitemap.xml ์์ฑ
๋ช ํจ๊ณผ ํ์ ์ธ์ฌ๋ฅผ ์ค๋นํ์ผ๋, ์ด์ ๋ก๋ด์ด ์ฌ์ดํธ ๊ตฌ์๊ตฌ์์ ๊ธธ ์์ง ์๊ณ ๋์๋ค๋ ์ ์๋๋ก **'์ง๋(Sitemap)'**๋ฅผ ๋ง๋ค์ด ์ค ์ฐจ๋ก์์ต๋๋ค.
์น์ฌ์ดํธ์ ๋ฉ๋ด๊ฐ ํ๋๋ ๋์ด๋๋ฉด์ ์์ ๊ฒ์ํ, ๋ญํน ๋ณด๋ ๋ฑ ์ฌ๋ฌ ํ์ด์ง๊ฐ ์๊ฒผ๊ธฐ ๋๋ฌธ์, ์ด ์ฃผ์(URL)๋ค์ ํ๋ฐ ๋ชจ์๋ XML ํ์์ ํ์ผ์ด ํ์ํ์ต๋๋ค. ํ์ด์ฌ FastAPI์์ ๋์ ์ผ๋ก ์ฌ์ดํธ๋งต์ ์์ฑํด ์ฃผ๋ ์ฝ๋๋ฅผ ์์ฑํ ๊น ๊ณ ๋ฏผ๋ ํ์ง๋ง, ์ผ๋จ์ ์ฌ์ดํธ ๊ตฌ์กฐ๊ฐ ์ง๊ด์ ์ด์ด์ ๊ธฐ๋ณธ ๊ฒฝ๋ก๋ค์ ๋ด์ <code>sitemap.xml</code> ์ ์ ํ์ผ์ ์ง์ ์์ฑํ์ฌ ์๋ฒ์ <code>static</code> ํด๋์ ๊ณ ์ด ๋ชจ์ ๋์์ต๋๋ค.
"์ด ์ง๋๋๋ก๋ง ์์ง์ด๋ฉด ๋ด ์ปค๋ฎค๋ํฐ์ ๋ชจ๋ ๊ธ์ ๋ณผ ์ ์์ด!"๋ผ๋ ๋ง์์ผ๋ก ์ง๋๋ฅผ ๊พน๊พน ๋๋ฌ ์ด ์ ์ ๋๋ค.
3. ๊ตฌ๊ธ ์์น ์ฝ์ ๋ฑ๋ก: "๊ตฌ๊ธ๋, ์ ๋ฐ ์ ์ข ๋ด์ฃผ์ธ์"
์ค๋น๋ฌผ์ ๋ชจ๋ ๊ฐ์ถฐ์ก์ต๋๋ค. ๋๋์ด ์ ์ธ๊ณ ์น์ฌ์ดํธ๋ค์ ํธ์ ๋ฑ๋ณธ(?)๊ณผ๋ ๊ฐ์ **'๊ตฌ๊ธ ์์น ์ฝ์(Google Search Console)'**์ ์ ์ํ์ต๋๋ค.
์ ๋๋ฉ์ธ์ธ <code>inspeep.com</code>์ ์ ๋ ฅํ๋, ๊ตฌ๊ธ์ "์ด ๋๋ฉ์ธ์ด ์ง์ง ๋ค ๊ฒ์ด ๋ง๋์ง ์ฆ๋ช ํด ๋ด"๋ผ๋ฉฐ ๋ณต์กํ ํ ์คํธ ์ฝ๋๋ฅผ ํ๋ ๋์ ธ์ฃผ์์ต๋๋ค. ๋นํฉํ์ง ์๊ณ ๋๋ฉ์ธ์ ๊ตฌ๋งคํ๋ ๋ค์์นฉ(Namecheap)์ DNS ๊ด๋ฆฌ ํ์ด์ง๋ก ๋ค์ด๊ฐ, ๊ตฌ๊ธ์ด ์ค ์ฝ๋๋ฅผ TXT ๋ ์ฝ๋์ ์ดํฌ์ ๋ผ์ ๋ฃ์์ต๋๋ค.
์ฝ 10๋ถ ๋ค, ์์น ์ฝ์ ํ๋ฉด์์ **[์์ ๊ถ ํ์ธ ์๋ฃ]**๋ผ๋ ์ด๋ก์ ๋งํฌ๊ฐ ๋ด์ ๋์ ๊ทธ ์ง๋ฆฟํจ์ด๋! ๊ณง๋ฐ๋ก ์ผ์ชฝ ๋ฉ๋ด์์ 'Sitemaps'๋ฅผ ํด๋ฆญํ๊ณ , ์๊น ๋ง๋ค์ด๋ <code>inspeep.com/sitemap.xml</code> ์ฃผ์๋ฅผ ์ ์ถํ์ต๋๋ค. ์ํ ์ฐฝ์ **'์ฑ๊ณต(Success)'**์ด๋ผ๋ ๊ธ์๊ฐ ๋จ๋ ์๊ฐ, ๋๋์ด ์ ์น์ฌ์ดํธ๊ฐ ๊ตฌ๊ธ์ด๋ผ๋ ๊ฑฐ๋ํ ์ธํฐ๋ท ์ธ์์ ์ ์ ์ผ์์ผ๋ก ์ธ์ ๋ฐ์ ๊ฒ ๊ฐ์ ๊ฐ์ด์ด ๋ญํดํด์ก์ต๋๋ค.
4. ์ต์ข ํ๊ณ ๋ก: 40๋ง ์์ ์์ฐ, ๊ทธ๋ฆฌ๊ณ ์ง์ง ๊ฐ๋ฐ์๋ก์ ์ฑ์ฅ
์ด ๋ชจ๋ ์ธํ ์ ๋๋ด๊ณ ๋๋, ๋ฌธ๋ ์ด ๊ฑฐ๋ํ ์ฝ์ง์ ์ฒซ ์ถ๋ฐ์ ์ด ๋ ์ฌ๋์ต๋๋ค.
ํํ๋กญ๊ฒ ๋ก์คํธ์ํฌ๋ฅผ ์ฆ๊ธฐ๋ฉฐ ์ฐจ๊ณก์ฐจ๊ณก ๋ชจ์๋ ๊ณจ๋. ๊ทธ ๊ฒ์ ์ฌํ๋ฅผ ํ๊ธํํด์ ์ป์๋ ์ฝ 40๋ง ์์ ์๋ฐํ ์๋๋จธ๋๊ฐ ๋ชจ๋ ์ผ์ ์์์ด์์ต๋๋ค. ์ฒ์์ "AI๊ฐ ๋ค ์ง์ฃผ๊ฒ ์ง"๋ผ๋ ์์ผํ ์๊ฐ์ผ๋ก ๋๋ฉ์ธ๊ณผ EasyWP ํธ์คํ ์ ๋ฌด์์ ๊ฒฐ์ ํ์์ฃ .
ํ์ง๋ง ํ์ค์ ๋ํนํ์ต๋๋ค. ์๋ํ๋ ์ค ํ ๋ง(Astra)์์ ๋์ฐํ ์ฝ๋ ์ถฉ๋, ํธ์คํ ๊ฐฑ์ ์ผ์ ์๋ฐ, ๊ทธ๋ฆฌ๊ณ ๋ณต์ฌ ๋ถ์ฌ๋ฃ๊ธฐ๋ง ๋ฐ๋ณตํ๋ '๋ฐ์ด๋ธ ์ฝ๋ฉ'์ ์ฐธํนํ ๊ฒฐ๋ง(์ฌ์ดํธ ์ ์ ๋ถ๊ฐ ์ฌํ)๊น์ง. ํฌ๊ธฐํ๊ณ ์ถ์ ์๊ฐ์ด ์์์ด ๋ง์์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ทธ ์๊ธฐ๋ค์ ๊ฒฐ๊ตญ ์ ๋ฅผ ๋ก์ ๊ตฌํ ๋ ธํธ๋ถ์ ๊บผ๋ด ๋ค๊ฒ ๋ง๋ค์๊ณ , ๋ฆฌ๋ ์ค(Ubuntu)์ ๊น๋ง ํฐ๋ฏธ๋ ํ๋ฉด๊ณผ ์นํด์ง๊ฒ ๋ง๋ค์์ผ๋ฉฐ, ํด๋ผ์ฐ๋ํ๋ ์ด ํฐ๋๊ณผ tmux๋ฅผ ๋ค๋ฃจ๊ฒ ํด ์ฃผ์์ต๋๋ค. FastAPI๋ก ๋ฐฑ์๋ ๋ผ๋๋ฅผ ์ธ์ฐ๊ณ , Jinja2๋ก ํ๋ก ํธ์๋๋ฅผ ํต์ ํ๋ฉฐ, OpenCV๋ก ์ธ๋ค์ผ์ ์๋ ์ถ์ถํ๋ ์ง๊ธ๊น์ง์ ๊ณผ์ . ๋์ด์ผ๋ณด๋ฉด ์๋ฌ ๋ฉ์์ง๋ฅผ ๋ถ๋ค๊ณ ์ ๋ฏธ๋์ด, ํด๋ก๋์ ๋ฐค์ ์จ๋ฆํ๋ ๊ทธ ๊ณ ํต์ค๋ฌ์ด ์๊ฐ๋ค์ด ์ ๋ฅผ ์๋์ ์ธ '๊ฒ์ ์ ์ '์์ ๋ฌด์ธ๊ฐ๋ฅผ ์ฐฝ์กฐํด ๋ด๋ '๊ฐ๋ฐ์'๋ก ์ฑ์ฅ์์ผ ์ค ๊ฐ์ฅ ๊ฐ์ง ๊ฑฐ๋ฆ์ด ๋์์ต๋๋ค.
๋ง์น๋ฉฐ: ๊ฐ๋ฐ๊ธฐ๋ ๋๋ฌ์ง๋ง, ์ด์์ ์ด์ ๋ถํฐ ์์์ ๋๋ค
์ฅ์ฅ 15ํธ์ ๊ฑธ์น ์ ์ [์น์ฌ์ดํธ ๊ฐ๋ฐ๊ธฐ] ์ฐ์ฌ๋ ์ฌ๊ธฐ์ ๋ง์นจํ๋ฅผ ์ฐ์ต๋๋ค.
์๋ฌด๊ฒ๋ ๋ชจ๋ฅด๋ ์ฝ๋ฉ ๋ฌธ์ธํ์ด ๋๋ง์ ์ธ์คํ๊ทธ๋จํ ์ปค๋ฎค๋ํฐ ์น์ฌ์ดํธ๋ฅผ ๋งจ๋ ์ ํค๋ฉํ๋ฉฐ ๊ตฌ์ถํด ๋ธ ์ด ์์ํ ๊ธฐ๋ก์ด, ์ ์ ๋น์ทํ ๊ฟ์ ๊พธ๋ ๋ง์ ์๋น ๋ ํ ๊ฐ๋ฐ์๋ถ๋ค์๊ฒ ์์ ์ฉ๊ธฐ์ ์ด์ ํ๊ฐ ๋๊ธฐ๋ฅผ ์ง์ฌ์ผ๋ก ๋ฐ๋๋๋ค.
๊ฑด๋ฌผ์ ์ง๋ ๊ณต์ฌ๋ ๋๋ฌ์ง๋ง, ์ด ๊ณต๊ฐ์ ์ด๋ค ์ ์ ๋ค์ด ์ฐพ์์ค๊ณ ์ด๋ค ์ด์ผ๊ธฐ๋ค์ด ์ฑ์์ง์ง, ์ง์ง ๊ฐ์ด ๋ฐ๋ **'์ด์'**์ ๋ฐ๋ก ์ค๋๋ถํฐ ์์์ ๋๋ค. ๊ทธ๋์ ๊ธธ๊ณ ๋ถ์กฑํ๋ ์ ์ ์ฝ์ง๊ธฐ๋ฅผ ํฅ๋ฏธ๋กญ๊ฒ ์ฝ์ด์ฃผ์ ๋ชจ๋ ๋ถ๋ค๊ป ์ง์ฌ์ผ๋ก ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ์์ผ๋ก ์ ์ ์น์ฌ์ดํธ์์ ๋ง๋์!
๊ฐ์ฌํฉ๋๋ค!!!
๋ชจ๋ ํธ ๋ค์๋ณด๊ธฐ :
2. ์ฝ๋ฉ ๋ฌธ์ธํ์ ์๋ํ๋ ์ค ์ ๋ณต๊ธฐ: VS Code์ FTP์ ์ต๊ฒฉ
3. ์ ์ ๋ถ๊ฐ ์ฌํ ๋ฐ์! ์ด๋ณด ๊ฐ๋ฐ์์ ๋๋ฌผ๊ฒจ์ด ์๋ฒ ๋ณต๊ตฌ ์ฑ๊ณต๊ธฐ
4. Copilot๊ณผ ํจ๊ปํ๋ ํ๋ณต ๊ฐ๋ฐ, ๊ทธ๋ฆฌ๊ณ ์ฐพ์์จ ์๋ํ๋ ์ค์ ํ๊ณ
7. ์ฐ๋ถํฌ(Ubuntu) ๋ ธํธ๋ถ ์๋ฒ ๊ตฌ์ถ๊ณผ ์๋ฒฝํ ์๊ฒฉ ๊ฐ๋ฐ ํ๊ฒฝ ๋ง๋ค๊ธฐ
9. ๊ธฐ๋ณธ๋ถํฐ ๋ค์ ํ๊ธฐ: ๋ง์์ ๋น์ฐ๊ณ FastAPI ์๋ฒ์ Cloudflare ํฐ๋์ ๋ซ๋ค
10. ๋ฐฉ๊ตฌ์ ์๋ฒ์ ํ๊ณ๋ฅผ ๋๋ค: Render ๋ฐฑ์ ๋ถํฐ ์น์งํ ๊ฒ์ํ ๊ฐ๋ฐ๊น์ง
11. ํญ์ ๋ง๋ค๊ณ ๋๋ฉด ์กฐ๊ธ์ฉ ์์ฝ๋ค: ๊ณ์๋๋ ๋ค๋ฌ๊ธฐ
12. ๋ชจ๋ฐ์ผ ์ ์ ๋ฅผ ์ก์๋ผ! ๋ฐ์ํ ์น ๋์์ธ๊ณผ Jinja2 ๋ํ ์ผ์ ์์ฑ
13. ์๋ฒฝํ ์ปค๋ฎค๋ํฐ๋ฅผ ์ํ ๊ด๋ฆฌ์์ ๊ณ ๊ตฐ๋ถํฌ: OpenCV ์ธ๋ค์ผ๊ณผ ์๋ฌ ๋์ฒ๋ฒ
๐ฌ ๋๊ธ 0๊ฐ