์›น ์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ์˜ ๋งฅ๋ฝ์—์„œ .htaccess (HyperText Access์˜ ์•ฝ์–ด)๋Š” Apache ์›น ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์›น ์„œ๋ฒ„์—์„œ ๋””๋ ‰ํ† ๋ฆฌ ์ˆ˜์ค€ ์„ค์ • ๋ฐ ๋ณด์•ˆ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๊ตฌ์„ฑ ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. .htaccess ํŒŒ์ผ์„ ํŠน์ • ๋””๋ ‰ํ„ฐ๋ฆฌ์— ๋ฐฐ์น˜ํ•˜๋ฉด ์‚ฌ์šฉ์ž๋Š” ํ•ด๋‹น ๋””๋ ‰ํ„ฐ๋ฆฌ์™€ ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ, ๋ฆฌ๋””๋ ‰์…˜, URL ์žฌ์ž‘์„ฑ, ์˜ค๋ฅ˜ ํŽ˜์ด์ง€ ๋“ฑ ๋‹ค์–‘ํ•œ ์ธก๋ฉด์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

.htaccess ํŒŒ์ผ์€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๊ธฐ๋ณธ ์„œ๋ฒ„ ๊ตฌ์„ฑ ํŒŒ์ผ์— ์ง์ ‘ ์•ก์„ธ์Šคํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ํ•„์š” ์—†์ด ์›น ์‚ฌ์ดํŠธ ๊ตฌ์„ฑ์„ ๋ฏธ์„ธ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ถ„์‚ฐํ™”๋ฅผ ํ†ตํ•ด ๊ฐœ๋ณ„ ๊ฐœ๋ฐœ์ž์™€ ๊ด€๋ฆฌ์ž๋Š” ๊ณต์œ  ํ˜ธ์ŠคํŒ… ํ™˜๊ฒฝ์—์„œ ์„œ๋กœ ๋…๋ฆฝ์ ์œผ๋กœ ํŠน์ • ํ”„๋กœ์ ํŠธ์˜ ์„ค์ •์„ ๊ด€๋ฆฌํ•˜๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์š”๊ตฌํ•˜๋Š” ๋Œ€๋กœ ์„œ๋ฒ„ ๋™์ž‘์„ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

.htaccess ํŒŒ์ผ์—์„œ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์€ URL ์žฌ์ž‘์„ฑ์ž…๋‹ˆ๋‹ค. Apache์˜ ๋‚ด์žฅ ๋ชจ๋“ˆ์ธ mod_rewrite๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ์ž๋Š” ๋ณต์žกํ•˜๊ณ  ๋™์ ์ธ URL์„ ์ •์ ์ด๊ณ  ๊ฐ„๋‹จํ•œ URL๋กœ ๋‹ค์‹œ ์ž‘์„ฑํ•˜์—ฌ ๊น”๋”ํ•˜๊ณ  ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ URL์„ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” SEO ์ตœ์ ํ™”์™€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๋ชจ๋‘ ํ–ฅ์ƒ์‹œ์ผœ ๊ถ๊ทน์ ์œผ๋กœ ์›นํŽ˜์ด์ง€ ์ˆœ์œ„๋ฅผ ๋†’์ด๊ณ  ์‚ฌ์ดํŠธ ํŠธ๋ž˜ํ”ฝ์„ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๋Š” .htaccess ํŒŒ์ผ์ด ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ์ธก๋ฉด์ž…๋‹ˆ๋‹ค. ์ž˜ ์•Œ๋ ค์ง„ 404 ํŽ˜์ด์ง€๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Œ ์˜ค๋ฅ˜์™€ ๊ฐ™์€ ์‚ฌ์šฉ์ž ์ •์˜ ์˜ค๋ฅ˜ ํŽ˜์ด์ง€๋Š” ์ผ๋ฐ˜์ ์ธ ์„œ๋ฒ„ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๋Œ€์‹  ๋ณด๋‹ค ์ผ๊ด€๋˜๊ณ  ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ .htaccess ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋ฉด ํŽ˜์ด์ง€๊ฐ€ ์ด๋™๋˜๊ฑฐ๋‚˜ ์‚ญ์ œ๋œ ๊ฒฝ์šฐ ๋ฆฌ๋””๋ ‰์…˜์„ ๊ตฌ์„ฑํ•˜์—ฌ ์‚ฌ์šฉ์ž๋ฅผ ์˜ฌ๋ฐ”๋ฅธ ๋ฆฌ์†Œ์Šค๋กœ ์›ํ™œํ•˜๊ฒŒ ์•ˆ๋‚ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋ฐ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๊ณผ์˜ ํ†ตํ•ฉ์€ ์›น ์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ์˜ ํ•ต์‹ฌ์ด๋ฉฐ .htaccess ์˜ ์ง€์›๋„ ์˜ˆ์™ธ๋Š” ์•„๋‹™๋‹ˆ๋‹ค. PHP ๋ฐ Python๊ณผ ๊ฐ™์€ ์„œ๋ฒ„์ธก ์Šคํฌ๋ฆฝํŒ… ์–ธ์–ด์— ๋Œ€ํ•œ ๊ตฌ์„ฑ์€ .htaccess ํŒŒ์ผ์— ํŠน์ • ์ง€์‹œ๋ฌธ์„ ํฌํ•จํ•˜์—ฌ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— ์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(CMS) ๋ฐ ์ „์ž์ƒ๊ฑฐ๋ž˜ ํ”Œ๋žซํผ๊ณผ ๊ฐ™์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ์˜ ํ†ตํ•ฉ์ด ๋”์šฑ ์›ํ™œํ•˜๊ณ  ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

.htaccess ํŒŒ์ผ์€ ๋†€๋ผ์šด ๋‹ค์–‘์„ฑ๊ณผ ์ œ์–ด ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋งŒ ๊ฒฝํ—˜์ด ์—†๋Š” ์‚ฌ์šฉ์ž๋Š” ์›น ์‚ฌ์ดํŠธ ๊ตฌ์„ฑ์— ์ด ํŒŒ์ผ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. .htaccess ํŒŒ์ผ์˜ ๊ตฌ์„ฑ์ด ์ž˜๋ชป๋˜๋ฉด ์‚ฌ์ดํŠธ ๊ธฐ๋Šฅ ์†์ƒ, ๋ณด์•ˆ ์ทจ์•ฝ์„ฑ, ์„ฑ๋Šฅ ์ €ํ•˜ ๋“ฑ์˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMasterno-code ํ”Œ๋žซํผ์€ ์ง๊ด€์ ์ธ ์‹œ๊ฐ์  ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ์›น์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹จ์ˆœํ™”ํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ .htaccess ํŒŒ์ผ๊ณผ ๊ฐ™์€ ๊ธฐ์ˆ ์  ์ธก๋ฉด์— ๋Œ€ํ•œ ์‹ฌ์ธต์ ์ธ ์ง€์‹ ์—†์ด๋„ ๊ธฐ๋Šฅ์ด ๋›ฐ์–ด๋‚˜๊ณ  ํ™•์žฅ์„ฑ์ด ๋›ฐ์–ด๋‚œ ์›น, ๋ชจ๋ฐ”์ผ ๋ฐ ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” AppMaster ์‹œ๊ฐ์  ๋„๊ตฌ์™€ ํฌ๊ด„์ ์ธ ๋ฐฑ์—”๋“œ ์ง€์›์„ ํ™œ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ธ์ฆ, ๋ณด์•ˆ API endpoints, ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ๋งž์ถคํ˜• ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค์™€ ๊ฐ™์€ ํ•„์ˆ˜ ๊ธฐ๋Šฅ์œผ๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์†์‰ฝ๊ฒŒ ์‚ฌ์šฉ์ž ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์›น ์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ์€ ์ค‘์†Œ๊ธฐ์—…์—์„œ ๋Œ€๊ธฐ์—…์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๊ณ ๊ฐ์ด ๋” ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ณ  ๋” ๋น ๋ฅด๊ณ  ๋น„์šฉ ํšจ์œจ์ ์ด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

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