1. ์น ์๋ฒ ๊ธฐ๋ณธ ์์
์น์๋ฒ๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํด์๋ APM(apache, PHP, MySQL)์ด ํ์ํ๋ค.
๊ฐ๊ฐ์ ์ค์นํ๋ ๊ณผ์ ์ด ๋งค์ฐ ๋ฒ๊ฑฐ๋ก์ด๋ฐ, XAMPP๋ผ๋ ํตํฉ ์ค์น ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ชจ๋ ๊ณผ์ ์ด ๊ฐ๊ฒฐํ๊ฒ ํด๊ฒฐ๋๋ค.
PHP๋ ์น ํ๋ก๊ทธ๋๋ฐ ์ธ์ด, MySQL์ DB ์์คํ , ๊ทธ๋ฆฌ๊ณ Apache๋ HTTP ์น ์๋ฒ์ด๋ค.
1.1. Apache
Apache๋ ์๋์์ด๋ ์น ์๋ฒ์ฉ ์ํํธ์จ์ด์ด๋ค. HTTP Apache๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค. ๋ฆฌ๋ ์ค๋ ์๋์ฐ ๋ฑ ๊ฑฐ์ ๋ชจ๋ ์ด์์ฒด์ ์์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๊ตฌ์ถ์ด ์ฝ๊ณ , ๋ค์ํ ์ถ๊ฐ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ํ๋ ๊ฐ์ฅ ์ธ๊ธฐ์๋ ์น ์๋ฒ๋ก ์ด์ฉ๋๊ณ ์๋ค.
1.2. ์น ์๋ฒ๋?
์น ์๋ฒ๋, ์น ๋ธ๋ผ์ฐ์ ์ ๊ฐ์ Client๋ก ๋ถํฐ HTTP ์์ฒญ์ ๋ฐ์๋ค์ด๊ณ , HTLM ๋ฌธ์์ ๊ฐ์ ์น ํ์ด์ง๋ฅผ ๋ฐํํ๋ ์ปดํจํฐ ํ๋ก๊ทธ๋จ์ด๋ค. ๋๋ ์์์ ์ธ๊ธํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ํ๋ก๊ทธ๋จ์ ์คํํ๋ ์ปดํจํฐ๋ฅผ ์๋ฏธํ๊ธฐ๋ ํ๋ค.
์น์๋ฒ์ ์ฃผ์ ๊ธฐ๋ฅ์ ์น ํ์ด์ง๋ฅผ Client์๊ฒ ์ ๋ฌํ๋ ๊ฒ์ด๋ค. ์ฃผ๋ก HTML, CSS, JS, IMG ๋ฑ ์ ์ ์ธ ์ ๋ณด๊ฐ Client์๊ฒ ์ ๋ฌ๋๋ค. ์ฃผ ๊ธฐ๋ฅ์ ์ฝํ ์ธ ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด์ง๋ง, Client๋ก๋ถํฐ ์ฝํ ์ธ ๋ฅผ ์ ๋ฌ ๋ฐ๋ ๊ฒ๋ ์น ์์์ ๊ธฐ๋ฅ์ด๋ค. ๋ํ์ ์ธ ์น ์๋ฒ๋ก๋ IIS, Apach, Nginx ๋ฑ์ด ์๋ค.
์น ์๋ฒ๋ ์ ์ ์ธ ๋ฐฉ์, ๊ทธ๋ฆฌ๊ณ ๋์ ์ธ ๋ฐฉ์์ผ๋ก ๋๋ ์ ์๋ค.
- ์ ์ ์ธ ์น ์๋ฒ: ๋จ์ํ HTML ๋ฌธ์๋ง์ ์ฌ์ฉ์์๊ฒ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ Apache ์น ์๋ฒ ํ๋๋ฉด ๋๋ค.
- ๋์ ์ธ ์น ์๋ฒ: ๋์ ์ธ ์น ํ์ด์ง๋ ์ฌ์ฉ์์ ์๊ตฌ์ ๋ฐ๋ผ์ ๋ค์ํ ์น ํ์ด์ง๋ฅผ ์ ๊ณตํ๊ณ , ์ด๋ฅผ ๊ตฌ์ฑํ๊ธฐ ์ํด php์ MySQL DB๋ฅผ ์ฐ๊ณํด์ ์ฌ์ฉํด์ผํ๋ค.
-> HTML ์ฝ๋ ์์ php ์ธ์ด๊ฐ ํฌํจ๋์ด ์๊ณ , ์น์๋ฒ(Apache)์์ php์ฝ๋๋ฅผ ํด์ํด ๋์ ์นํ์ด์ง ์์ฑ์ด ๊ฐ๋ฅํ๋ค.
2. XAMPP๋ฅผ ์ด์ฉํ์ฌ apache-php ์๋ฒ ๊ตฌ์ถ
( PHP ์ฌ์ฉ์ ์ํ VSCode ๊ธฐ๋ณธ ์ค์น ๋ด์ฉ (kincoding.com) ) ์ฐธ๊ณ ํ ๋ธ๋ก๊ทธ์ด๋ค.
๋์ ๊ฒฝ์ฐ XAMPP๋ฅผ ์ค์นํ๊ณ ์คํํ์ ๋, mysql๊ณผ ๊ด๋ จ๋ ์ค๋ฅ ๋ฉ์์ง๊ฐ ๋ด๋ค. xampp ์ค์น ์ด์ ์ MySQL์ ์ฌ์ฉํ๊ณ ์์ด์ ๊ทธ๋ฐ๋ฏ ํ๋ค.
๊ทธ๋์ ๋๋ ์๋ ์ค์น๋์ด์์๋ MySQL์ ์ญ์ ํ๊ณ ํ๊ฒฝ ๊ตฌ์ถ์ ์์ํ๋ค.
3. ๊ฐ๋ฐํ๊ฒฝ ๊ตฌ์ถ
XAMPP์์ Apache ์๋ฒ๊ฐ ์คํ๋ ๋, ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด PHP ํ์ผ์ ์คํํ๋ ค๋ฉด PHP ํ์ผ์ด htdocs ๋๋ ํ ๋ฆฌ ๋๋ ๊ทธ ํ์ ํด๋์ ์ ์ฅ๋์ด ์์ด์ผ ์ ์์ ์ผ๋ก ์คํ๋๋ค. XAMPP์์ ์ ๊ณตํ๋ Apache ์๋ฒ๋ ๊ธฐ๋ณธ์ ์ผ๋ก htdocs ๋๋ ํ ๋ฆฌ ๋ด์ ํ์ผ์ ์ ๊ณตํ๋ ์น ์๋ฒ์ด๋ค. ๋ฐ๋ผ์ PHP ํ์ผ์ด ์ด ๋๋ ํ ๋ฆฌ ์์ ์์ด์ผ ์น ์๋ฒ๋ฅผ ํตํด ์คํ๋ ์ ์๋ค.
3.1. ์ php.exe๊ฐ ์๋ 'C:\xampp\php'๊ฐ ์๋ 'C:\xampp\php'์์ ์์ ํ ๊น?
php.exe๋ PHP์ CLI๋ก, ํฐ๋ฏธ๋ ๋๋ ์ปค๋ฉ๋๋ผ์ธ์์ PHP ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ๋ฐ๋ฉด htdocs ํด๋๋ Apache ์น ์๋ฒ๊ฐ PHP ํ์ผ์ ์น ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์คํํ ์ ์๋๋ก ์ค์ ๋ ๋๋ ํ ๋ฆฌ์ด๋ค.
3.2. htdocs
htdocs๋ Apache ์น ์๋ฒ๊ฐ PHP ํ์ผ์ ์ ๊ณตํ๋ ์น ๋ฃจํธ ๋๋ ํ ๋ฆฌ์ด๋ค. ๋ธ๋ผ์ฐ์ ์์ PHP ํ์ผ์ ์คํํ ๋๋ Apache๊ฐ ํด๋น ํ์ผ์ ์ฒ๋ฆฌํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์น ํ์ด์ง๋ก ์ถ๋ ฅํ๋ค. ์ด ๋ฐฉ์์ HTTP ์์ฒญ์ ํตํด php๋ฅผ ์คํํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ธ๋ผ์ฐ์ ๋ก ์ ๋ฌํ๋ ๋ฐฉ์์ด๋ค.
์๋ฅผ ๋ค์ด ๋ด๊ฐ 'practice.php'๋ผ๋ ์ฝ๋๋ฅผ ์์ฑํ๋ค๊ณ ์๊ฐํด๋ณด์.
์ฝ๋๋ฅผ ์์ฑ ํ์ผ๋ฉด XAMPP์ Apache๋ฅผ ํ์ฑํ ํด์ค๋ค (mysql์ ์ฌ์ฉํ๋ค๋ฉด ์ด๊ฒ๋).
url ์ฐฝ์ 'localhost'๋ฅผ ์ ๋ ฅํ์ ๋, ์ด๋ฐ ํ์ด์ง๊ฐ ๋จ๋ฉด Apache ์๋ฒ๊ฐ ์ ๊ตฌ๋๋๊ณ ์๋ค๋ ์๋ฏธ์ด๋ค.
์๋ฒ๊ฐ ์ ์คํ๋๋ ๊ฒ์ ํ์ธํ๋ค๋ฉด, /practice.php๋ฅผ ์ ๋ ฅํด๋ณด์. ๊ทธ๋ผ ๋ด๊ฐ ์์ฑํ ์ฝ๋๊ฐ ๋ณด์ผ ๊ฒ์ด๋ค.
4. ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ํ์ ํ๋ ค๋ฉด?
์์์ ๋งํ๋ฏ์ด XAMPP์์ ์ ๊ณตํ๋ Apache ์๋ฒ๋ ๊ธฐ๋ณธ์ ์ผ๋ก htdocs ๋๋ ํ ๋ฆฌ ๋ด์ ํ์ผ์ ์ ๊ณตํ๋ ์น ์๋ฒ์ด๋ค. ๋ฐ๋ผ์ ํ์ ์ ํ ๋๋, ํ์ ํ๋ php ํ์ผ์ด ์ด ๋๋ ํ ๋ฆฌ ์์ ์์ด์ผ ์น ์๋ฒ๋ฅผ ํตํด ์คํ ๊ฐ๋ฅํ๋ค.
ํ์ ํ ๋๋, Git๊ณผ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ๋ก์ปฌ ํ๊ฒฝ์์ ์์ ํ๊ณ , ์ดํ ์ฝ๋๋ฅผ ๊ณต์ ํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ค. ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ์๋ฉด
"๊ฐ์ ํ๋ก์ ํธ๋ฅผ ๋ก์ปฌ ํ๊ฒฝ์์ ์งํํ๋ค -> git ๊ฐ์ ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ํตํด ์์ ์ด ์์ ํ ํ๋ก์ ํธ๋ฅผ ์ ๋ก๋ํ๋ค -> ๋ค๋ฅธ ํ์๋ค์ด ์ฌ๋ฆฐ ์ฝ๋๋ฅผ ๋ค์ด๋ก๋ ๋ฐ์ ๋ค์, ๋ก์ปฌ ์ปดํจํฐ์ XAMPP๋ก ์ฎ๊ฒจ ์ดํ ์์ ์ ์์ํ๋ค"
..๋์ถฉ ์ด๋ฐ ๋๋์ผ๋ก ๋๋ ์ดํดํ๋ค.
'๐ Public > Development' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Python ๊ฐ์ํ๊ฒฝ Venv ์ดํด (1) | 2024.09.12 |
---|