July 12, 2020
staticํ์ผ์ด ํฌํจ๋ ํ๋ก์ ํธ๋ฅผ ์๋ฒ๋ก ๋ฐฐํฌํ๊ธฐ ์ํด์ ํฌ๊ฒ ๋๊ฐ์ง์ ๊ณผ์ ์ ๊ฑฐ์ณ์ผ ํฉ๋๋ค.
์์ ๊ณผ์ ์ ์ํํ๊ธฐ ์ํ์ฌ ํด์ผ ํ ์ผ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ํ๊ณ ์๋ Django๋ ์ค์ง์ ์ผ๋ก ์น์๋ฒ๊ฐ ์๋๋ผ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ๋ ํ๋ ์์ํฌ์ ๋๋ค. ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์น์๋ฒ๊ฐ ๋ฐ์ ์์ฒญ์ ๋๊ฒจ์ฃผ๋ฉด ๋ก์ง์ ๋ง์ถ์ด ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ํ ์น์๋ฒ์๊ฒ ๋๋ ค์ฃผ์ด ์ฌ์ฉ์์๊ฒ ์๋ตํ๊ฒ ํ๋ ์ญํ ์ ํฉ๋๋ค.
ํ์ง๋ง ์ฌ์ค ์ฌ์ฉ์์๊ฒ ์๋ตํ๋ ๊ฒ์ ์น์๋ฒ ์์ฒด์์ ํ ์ ์๊ธฐ๋๋ฌธ์ ๊ตณ์ด ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฒ๋ฆฌํ ํ์๊ฐ ์์ต๋๋ค. ์คํ๋ ค ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฑฐ์น๊ฒ ๋๋ฉด wsgi(์น์๋ฒ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ ํต์ ์ ์ํ ์ธํฐํ์ด์ค)๋ฅผ ๊ฑฐ์ณ์ผํ๋ฏ๋ก ๋นํจ์จ์ ์ธ ๋ก์ง์ด ํ๋ ๋ ๋์ด๋ฉ๋๋ค.
๋ฐ๋ผ์ Django์์๋ static ํ์ผ์ ์ง์ ์ฒ๋ฆฌํ๋ ๊ธฐ๋ฅ์ ๋ด๊ณ ์์ง ์์ต๋๋ค. ๋์ ํ๋ก์ ํธ๋ฅผ ์ค์ ๋ก ๋ฐฐํฌํ ๋ collectstatic์ ํตํด ํ๋ก์ ํธ ๋ด์ ํฉ์ด์ ธ์๋ static ํ์ผ๋ค(๊ฐ๊ฐ์ ์ฑ์ ๋ธ๋ฆฐ staticํด๋)๋ฅผ ํ๊ตฐ๋ฐ์ ๋ชจ์ ๋ค ์๋ฒ๋ก ๋ณต์ฌํด์ค๋๋ค.
์ด๋ ๊ฒ ๋ชจ์ผ๋ ๊ณผ์ ์ ๊ฑฐ์น๋ฉด ์ค์ ๋ฐฐํฌ๋๋ ์น์๋ฒ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ๋ณต์ฌํด์ค static ํ์ผ๋ค์ ์ ์ฅํ ๋ค ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ง์ ์๋ตํ ์ ์๊ฒ ๋ฉ๋๋ค.
๊ฐ๋ฐ ๋จ๊ณ(DEBUG = True) ์ฆ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ์์นํ static ํ์ผ์ ์์น๋ฅผ ์ง์ ํ๋ ํญ๋ชฉ์ ๋๋ค. ์ฌ๋ฌ๊ฐ์ ๊ฒฝ๋ก๋ ์ค์ ํ ์ ์์ต๋๋ค.
STATIC_ROOT(์ค์ ๊ฒฝ๋ก)์ ์์นํ ์ฐธ์กฐํ๊ธฐ์ํ url์ ๋๋ค.
์๋ฒ ๋ฐฐํฌ ๋จ๊ณ(DEBUG = False)์์ static ํ์ผ์ ๋ชจ์ผ๊ธฐ ์ํ ์ ๋๊ฒฝ๋ก๋ฅผ ์๋ฏธํฉ๋๋ค. ์ด ๊ฒฝ๋ก์ ์๋ ๋ชจ๋ ํ์ผ์ ์น์๋ฒ๊ฐ ์ง์ ์ ๊ณตํ ์ ์๊ฒ ๋ฉ๋๋ค. ์ฑ ๋ด์ ์์นํ static ํด๋์ STATICFILES_DIRS์ ๋ช ์๋ ๊ฒฝ๋ก์ ์๋ ๋ชจ๋ ํ์ผ์ ๋ชจ์๋๋ค.