Server/basic

AWS - nginx + mysql + php ์„œ๋ฒ„ ๊ตฌ์ถ•

์ €๋ฒˆ ์‹œ๊ฐ„์—๋Š” AWS ec2 ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ์„ ํ•˜์˜€๋‹ค.

[์ €๋ฒˆ๊ธ€: 10000sukk.tistory.com/24]

์ด๋ฒˆ ๊ฒŒ์‹œ๊ธ€์—์„œ๋Š” aws ec2 ์ธ์Šคํ„ด์Šค(ubuntu AMI)์— nginx+mysql+php (LEMP)๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์„œ๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ•˜์—ฌ ๋ณผ ๊ฒƒ์ด๋‹ค.

 

 

1. SFTP ์‰ฝ๊ฒŒ ์‚ฌ์šฉ๋ฒ•

ftp ๋˜๋Š” sftp ํ”„๋กœํ† ์ฝœ ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์œˆ๋„์šฐ ์‚ฌ์šฉ์ž๋“ค์€ winSCP๋ฅผ ์‚ฌ์šฉ ํ•  ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Š” macOS ๋ฒ„์ „์€ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค.

๊ทธ๋ฆฌํ•˜์—ฌ ํŒŒ์ผ์งˆ๋ผ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ์„œ aws ec2 ์ธ์Šคํ„ด์Šค๋ฅผ sftp ํ”„๋กœํ† ์ฝœ์„ GUI ๋กœ ์‰ฝ๊ฒŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. ์‰ฝ๊ฒŒ ํŒŒ์ผ ์ „์†ก์ด ๊ฐ€๋Šฅ!

 ์ด๋ฅผ ์„ค์น˜ํ•˜์—ฌ ์ค€๋‹ค.

 

 

 

 

 

 

ํŒŒ์ผ์งˆ๋ผ๋ฅผ ์‹คํ–‰ ์‹œํ‚ค๋ฉด ์œ„์™€ ๊ฐ™์€ ํ™”๋ฉด์„ ๋งˆ์ฃผํ•˜๊ฒŒ ๋œ๋‹ค.

 

 

 

ํŒŒ์ผ์งˆ๋ผ ์™ผ์ชฝ ์œ„์— ์ฒซ๋ฒˆ์งธ ์•„์ด์ฝ˜์„ ๋ˆ„๋ฅด๋ฉด ์‚ฌ์ดํŠธ ๊ด€๋ฆฌ์ž๋ฅผ ํŽธ์ง‘ ํ•  ์ˆ˜ ์žˆ๋‹ค.

new file ์„ ์„ ํƒํ•˜๊ณ  ์ด๋ฅผ ํŽธ์ง‘ํ•œ๋‹ค.

-sftp ๋กœ ํ”„๋กœํ† ์ฝœ์„ ์„ ํƒํ•˜๊ณ  ํฌํŠธ ๋ฒˆํ˜ธ๋Š” ์ด์— ๋งž๊ฒŒ 22๋ฒˆ์œผ๋กœ ์„ ํƒํ•œ๋‹ค.

 

-'ํ˜ธ์ŠคํŠธ' ์—๋Š” ์ž์‹ ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ํ™•์ธํ•œ๋‹ค.

ํผ๋ธ”๋ฆญ IPv4์˜ ๊ฐ’์„ ์ ์œผ๋ฉด ๋œ๋‹ค.

 

 

-์ดˆ๊ธฐ '์‚ฌ์šฉ์ž' ๋Š” ubuntu AMI ์ผ ๊ฒฝ์šฐ ubuntu ์ด๋‹ค.

[docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/managing-users.html]

 

-ํ‚ค ํŒŒ์ผ์—๋Š” ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ์‹œ์— ๋ฐ›์€ ํ‚ค ํŒŒ์ผ์„ ์ฒจ๋ถ€ํ•œ๋‹ค.

 

์—ฐ๊ฒฐ์„ ํ•˜๋ฉด

๋ฆฌ๋ชจํŠธ ์‚ฌ์ดํŠธ๊ฐ€ ์ž˜ ์—ฐ๊ฒฐ ๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์ด๊ฒƒ์„ ํ†ตํ•ด์„œ ์‰ฝ๊ฒŒ ํŒŒ์ผ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 

2. ํ„ฐ๋ฏธ๋„์—์„œ ssh ์‚ฌ์šฉ

๋‹ค์šด๋ฐ›์€ ํ‚ค๋ฅผ ์ด์šฉํ•ด์„œ ํ„ฐ๋ฏธ๋„์—์„œ ์›๊ฒฉ์ œ์–ด ๊ฐ€๋Šฅํ•œ ssh ํ”„๋กœํ† ์ฝœ๋กœ ์ธ์Šคํ„ด์Šค์— ์ ‘๊ทผ ํ•  ๊ฒƒ์ด๋‹ค. 

์ด๋ฅผ ์œ„ํ•ด์„œ ๋จผ์ € ํ‚ค ๊ถŒํ•œ์€ ์‚ฌ์šฉ๋กœ๋งŒ ์„ค์ • ํ•ด์•ผํ•œ๋‹ค. ํ‚ค ๊ถŒํ•œ์„ x00์œผ๋กœ ๋ฐ”๊ฟ”์•ผ ํ•œ๋‹ค.

[๊ณต์‹ ๋ฌธ์„œ: docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html]

 

๊ทธ ๋‹ค์Œ ์œ„์˜ ์„ค๋ช… ๋Œ€๋กœ ํ„ฐ๋ฏธ๋„์—์„œ ์ ‘์†์„ ์ง„ํ–‰ํ•ด ์ค€๋‹ค.

 

๋งˆ์ง€๋ง‰์œผ๋กœ yes ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด 

์•„๋ž˜์™€ ๊ฐ™์ด ๋œจ๋ฉด์„œ ์—ฐ๊ฒฐ์ด ์™„๋ฃŒ ๋œ๊ฒƒ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

 

3. LEMP ์„ค์น˜

์ด์ œ ์ด๋ฅผ ํ†ตํ•ด์„œ nginx+mysql+php (LEMP์Šคํƒ) ์„ ์„ค์น˜ ํ•˜๋ฉด ๋œ๋‹ค.

[์ฐธ๊ณ : www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-20-04]

 

1) nginx ์„ค์น˜

sudo apt update ๋ฅผ ์ง„ํ–‰ํ•œํ›„

 

์œ„๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

 

์ด์ œ ์›น ์ธ์Šคํ„ด์Šค ip ๋ฅผ ์ด์šฉํ•ด์„œ ์„œ๋ฒ„์— ์ ‘๊ทผ ํ•˜์ง€๋งŒ ์ ‘๊ทผ์— ์‹คํŒจํ•œ๋‹ค.

์ด์œ ๋Š”?

์ธ๋ฐ”์šด๋“œ ๊ทœ์น™ http(80ํฌํŠธ) ๋ฅผ ์—ด์–ด ๋‘์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

 

์œ„๋ฅผ ๋ณด๋‹ˆ 22๋ฒˆ ํฌํŠธ๋งŒ ์—ด๋ ค ์žˆ๋Š” ๊ฒƒ์ด ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” sftp , ssh ํ”„๋กœํ† ์ฝœ์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ํ–ˆ์ง€๋งŒ http ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉ ํ•˜์ง€ ๋ชปํ–ˆ๋˜ ๊ฒƒ์ด๋‹ค.

๋ณด์•ˆ ํ•ญ๋ชฉ์—์„œ ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™์„ ์ˆ˜์ • ๊ฐ€๋Šฅํ•˜๋‹ค.

 

๋ณด์•ˆ ๊ทธ๋ฃน์„ ํด๋ฆญํ•œ๋‹ค.

 

์ธ๋ฐ”์šด๋“œ ๊ทœ์น™ ํŽธ์ง‘์„ ํด๋ฆญํ•˜๊ณ 

 

์œ„์™€ ๊ฐ™์ด ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•ด ์ค€๋‹ค.

 

์ž˜ ์ˆ˜์ • ๋œ ๊ฒƒ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

๋‹ค์‹œ ์„œ๋ฒ„์— ์ ‘์†ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํŽ˜์ด์ง€๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

 

2) mysql ์„ค์น˜

 

 

์œ„์™€ ๊ฐ™์ด ์ ‘์†์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฌธ์„œ๋ฅผ ๋ณด๋ฉด ๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ •ํ•˜๋Š” ๋ฒ•๋„ ๋‚˜์™€ ์žˆ์œผ๋‹ˆ ์ฐธ๊ณ 

 

[docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/install-LAMP.html]

 

 

3)php ์„ค์น˜

 

 

PHP-fpm ์€ PHP FastCGI Process Manger์˜ ์•ฝ์ž๋กœ, CGI๋ณด๋‹ค ๋น ๋ฅธ ๋ฒ„์ „์ด๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CGI๋ž€, ์›น ์„œ๋ฒ„์—์„œ ์š”์ฒญ์„ ๋ฐ›์•„ ์™ธ๋ถ€ ํ”„๋กœ๊ทธ๋žจ์— ๋„˜๊ฒจ์ฃผ๋ฉด, ์™ธ๋ถ€ ํ”„๋กœ๊ทธ๋žจ์€ ๊ทธ ํŒŒ์ผ์„ ์ฝ์–ด html๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์น˜๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. Fast CGI๋Š” ์š”์ฒญํ• ๋•Œ๋งˆ๋‹ค ์ด๋ฏธ ์ƒ์„ฑ๋œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ๊ตฌ๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜๋ฆฌ๊ฐ€ CGI๋ณด๋‹ค ๋น ๋ฆ…๋‹ˆ๋‹ค. Apache์—์„œ๋Š” php๋ชจ๋“ˆ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, nginx์—์„œ๋Š” php-fpm์„ ๋”ฐ๋กœ ์„ค์น˜ํ•ด ์—ฐ๋™์„ ํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

[์ถœ์ฒ˜: yumserv.tistory.com/146]

 

 

cd /var/www/html ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๊ฐ€์„œ phpinfo.php ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ค€๋‹ค.

cd /etc/nginx/sites-available ๋ฅผ ํ•œํ›„ 

 

 

์œ„์™€ ๊ฐ™์ด ๋ชจ๋“ˆ ์—ฐ๊ฒฐ์„ ์œ„ํ•ด ์ฃผ์„์„ ํ•ด์ œํ•˜์—ฌ ์ค€๋‹ค.

 

์œ„์™€ ๊ฐ™์ด ์ž…๋ ฅํ•˜๋ฉด configuration ์ด ์—๋Ÿฌ ์—†์ด ๋ซ๋Š”์ง€ ๋‚˜์˜จ๋‹ค.  ์—๋Ÿฌ๊ฐ€ ๋‚˜์˜จ๋‹ค๋ฉด ๋‹ค์‹œ configuration ์„ ํ™•์ธํ•˜์ž.

 

nginx ์„œ๋ฒ„๋ฅผ ๋‹ค์‹œ restart ํ•˜๊ณ 

'์•„์ดํ”ผ'/phpinfo.php ๋ฅผ ๋ธŒ๋ผ์šฐ์ ธ์— ์ž…๋ ฅ ํ•˜์˜€์„๋•Œ ์•„๋ž˜์™€ ๊ฐ™์ด ๋‚˜์˜จ๋‹ค๋ฉด ์™„๋ฃŒ ๋œ๊ฒƒ์ด๋‹ค.