ubuntu์ php ์์ค ์ค์น
ubuntu-20.04์ php๋ฅผ ์์ค ์ค์นํด๋ณด์.
ubuntu APM ์์ค ์ค์น
์ด ํฌ์คํธ๋ ubuntu-20.04์ APM(Apache, PHP, MySql)์ ์์ค ์ค์นํ๋ ๊ณผ์ ์ด๋ฉฐ, ์๋์ ์ธ ๊ฐ์ง ์์์ ํฌ์คํ
์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
[Linux] ubuntu์ Apache ์์ค ์ค์น
[Linux] ubuntu์ MySql ์์ค ์ค์น
[Linux] ubuntu์ php ์์ค ์ค์น
์์ ํ๊ฒฝ
macOS์์ virtualBox๋ก ๊ฐ์๋จธ์ ubunto๋ฅผ ๋ง๋ค๊ณ ๊ทธ ์์ ์์ค ์ค์น๋ฅผ ์งํํ๋ค.
macOS : Big Sur 11.4
VirtualBox : 6.1.16
ubuntu : 20.04.2.0-desktop
์ด์ ๊ฒ์๊ธ์ ์๋ฏ์ด, apache์ mySql์ ์ฐ๋ถํฌ์ ์ค์นํ ์ํ์์ php ์ค์น๋ฅผ ์์ํ๋ค.
[Linux] ubuntu์ Apache ์์ค ์ค์น
[Linux] ubuntu์ MySql ์์ค ์ค์น
์ค์น ๊ฒฝ๋ก & ๊ถํ ๋ถ์ฌ
์ปดํ์ผ ์ค์น๋ ๊ด๋ก์ /usr/local
์ ์ค์นํ๋ฏ๋ก ํด๋น ๊ฒฝ๋ก๋ก ์ด๋ํ๋ค.
$ cd /usr/local
๋ํ ์ค์น์ ํ์ํ ๊ถํ์ ๋ถ์ฌ๋ฐ๊ธฐ ์ํด ๋ค์์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ ํจ์ค์๋๋ฅผ ์ ๋ ฅํ๋ค.
$ sudo su
ํ์ ์ค์น ๋ฐ php-7.4.1 ์ค์น
ํ์ ์ค์น
$ apt-get install libxml2-dev libjpeg-dev libpng-dev libsqlite3-dev
์ปดํ์ผ์ ํ์ํ ํ์ ์์๋ค์ ์ค์นํด ์ค๋ค.
๋ช ๋ น์ด
cd
: ์์น ์ด๋ ๋ช ๋ น์ดcp
: ๋ณต์ฌ ๋ช ๋ น์ดwget
: ์ง์ ํ ์ฃผ์๋ก ๋ถํฐ ํ์ผ์ ๋ค์ด๋ฐ๋ ๋ช ๋ น์ดtar xvfz
: tar.gz ํ์์ ์์ถ์ ํ์ด์ฃผ๋ ๋ช ๋ น์ดconfigure
: ์์คํ์ผ์ ๋ํ ํ๊ฒฝ์ค์ ์ ํด์ฃผ๋ ๋ช ๋ น์ด- configure์
prefix
์ต์ : ์ปดํ์ผ๋ ํ๋ก๊ทธ๋จ์ ์ค์นํ๋ ์์น
- configure์
make
: ์์ค๋ฅผ ์ปดํ์ผํด์ฃผ๋ ๋ช ๋ น์ดmake install
: make๋ฅผ ํตํด ๋ง๋ค์ด์ง ์ค์น ํ์ผ์ ์ค์นํด์ฃผ๋ ๋ช ๋ น์ด
configure -> make -> make test -> make install ์ ์์๋ก ์์ค๋ก ๋ ํ๋ก๊ทธ๋จ ์ค์น ์งํ
php-7.4.1 ์ค์น
$ wget https://www.php.net/distributions/php-7.4.1.tar.gz
$ tar xvfz php-7.4.1.tar.gz
$ cd php-7.4.1
$ ./configure \
--with-apxs2=/usr/local/apache2.4/bin/apxs \
--enable-mysqlnd \
--with-mysql-sock=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-imap-ssl \
--with-iconv \
--enable-gd \
--with-jpeg \
--with-libxml \
--with-openssl
configure
๊ฐ ์ฑ๊ณตํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ์ถ๋ ฅ๋๋ค.
$ make
$ make test
๊ธด ์๊ฐ์ด ์์๋์๊ณ , make test
์ดํ ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ์์์ง๋ง, make install
์ ์งํํ๋ php๊ฐ ์ค์น๋์๋ค.
$ make install
make install
ํ ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋จ๋ฉฐ ์ค์น๊ฐ ์๋ฃ๋๋ค.
์ค์น ํ์ธ ํ apache์ ์ฐ๋
$ cd /usr/local/apache2.4/modules
$ ls -l
libphp7.so
๊ฐ ์๋ค๋ฉด php๊ฐ ์ ์ค์น๋ ๊ฒ์ด๋ค.
vim /usr/local/apache2.4/conf/httpd.conf
/
ํค๋ฅผ ์ด์ฉํด์ php ๋ฌธ์์ด์ ๊ฒ์ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋ชจ๋์ด ์์ฑ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ด๋ฒ์ /
๋ฅผ ์ด์ฉํด์ /AddType
๋ฌธ์์ด์ ์ฐพ์ ๋ค ๋ค์๊ณผ ๊ฐ์ด ์๋ ํ์
์ ์ถ๊ฐํด ์ค๋ค.
AddType application/x-httpd-php .php .html
$ cd /usr/local/php-7.4.1
$ cp php.ini-production /usr/local/lib/php.ini
php.ini ํ์ผ์ ์ธํ ํด ์ฃผ๋ ๋ช ๋ น์ด์ด๋ค.
$ vim /usr/local/apache2.4/htdocs/phpinfo.php
ํ ์คํธ๋ฅผ ์ํ php๋ฅผ ์์ฑํด ์ฃผ๊ธฐ ์ํด ๋ค์์ ํ์ผ์ vim ํธ์ง๊ธฐ๋ก ์ฐ ๋ค ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํด ์ฃผ์.
<?php
phpinfo();
?>
Apache ์คํ ํ ํ์ธ
$ sudo /usr/local/apache2.4/bin/httpd -k stop
๊ธฐ์กด์ Apache๊ฐ ์คํ ์ค์ด๋ผ๋ฉด ์ข ๋ฃํด ์ค๋ค.
$ sudo /usr/local/apache2.4/bin/httpd -k start
$ ps -ef|grep httpd|grep -v grep
$ sudo netstat -anp|grep httpd
$ sudo curl http://127.0.0.1
http://127.0.1.1/phpinfo.php๋ก ์ ์ํด ์ฃผ์.
์ฑ๊ณต์ ์ผ๋ก ์ฐ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.