Ubuntu 18.04 NGINX 웹서버에 PHP7.2-FPM 설치하기.

PHP에 대한 이미지 검색결과

앞서 Nginx 를 설치한 다음에 해야할것은 바로 PHP7.2-FPM을 설치하는 것이다. Nginx는 아파치와는 다르게 php 파일을 해석하지 못하므로 php-fpm을 설치한다.(아파치도 php를 설치하긴한다..)

앞서 진행했던 Nginx 설치와 마찬가지로 apt-cache를 확인해서 설치할 버전을 확인한다.

apt-cache policy php7.2-fpm

7.2 버전으로 설치하도록 하겠다. 앞서 apt-get update를 했으므로 생략.

apt-get install php7.2-fpm

php7.2-fpm 설치후에는 php에서 자주쓰이는 모듈을 설치해준다.

apt-get install -y php7.2-cli php7.2-curl php7.2-gd php7.2-mysql php7.2-mbstring zip unzip

php -v 명령어로 설치가 잘 됐음을 확인할 수 있다.

php-fpm을 설치했다고 nginx가 php를 해석할수 있는것은 아니다. php 설치후에 nginx 에서 php 해석을 할 수 있도록 설정하는 작업이 필요하다.

수정할 파일은 /etc/nginx/sites-available/default 이다

vi /etc/nginx/sites-available/default

파일로 들어가면 많은 # 주석들이 있는데 일단 무시하고 수정할 부분은 server{의 안에

첫번째 사각형 안에는 index.php를 추가
두번째 사각형에는 php를 해석할수있도록 php 설정파일의 경로등을 지정해준다.
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_read_timeout 300; }
두번째 사각형 밑에 location ~ /.ht { deny all; }
// .htaccess 파일에 접근하지 못하도록 설정 도 추가.

최종적으로 수정할 경우 다음과 같다. (# 주석은 제거)

server {
         listen 80 default_server;
         listen [::]:80 default_server;
    root /var/www/html;
    index index.php index.html index.htm index.nginx-debian.html;
    server_name _;
    location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            try_files $uri $uri/ =404;
    }
    location ~ \.php$ {     include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;     fastcgi_read_timeout 300;
     }
    location ~ /\.ht {
    deny all;
    }
}

이대로 저장해주면 기본적인 설정은 완료 된다.

설정이 끝난뒤에는 nginx -t 옵션을 통해서 정상적으로 설정되었는지 확인할 수 있다.

이제 테스트용 php 파일을 만들어주는데 경로는 웹 서버 경로인 /var/www/html 이다

vi /var/www/html/index.php

파일내용은 php의 정보를 볼수있는 기본 코드만 넣으면 된다.

<?php phpinfo(); ?>

완료후에는 service nginx restartservice php7.2-fpm restart 명령어로 둘다 재 시작 시켜준다.

이제 기존 nginx 웹사이트 테스트와 동일하게 진행해주면 되는데 사이트 주소는 http://192.168.0.102(자신의 서버IP)/index.php 를 치면 된다.

-끝-

사진은 추후에 첨부하도록 하겠다.

 

————————————————–

사이트 리뉴얼중입니다~

서버(Linux, ESXi), NAS(헤놀로지, ESXi 및 IT관련 정보, 기타 등등을 공유하는 커뮤니티 SVRFORUM을 새로 만들었습니다.
많은 가입(?) 부탁드립니다~
https://svrforum.com

이전글들은 모두 상단 메뉴의 Blog 글 모음에있습니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

홈서버 IT 커뮤니티 SVRFORUM
Link