개인 자료란 (JE)

  서버 커뮤니티

Profile 보라색구미호 대표칭호 없음

kudansul 6d5511fbd0844e0aa7837820dbac8d01

Profile

리눅스(Centos)

[전문적 리눅스 서버관리기술] 웹서버와 php 연동하기(nginx 편)

2020.03.27 조회 수 72 추천 수 0

시작하며....

PHP는 프로그래밍 언어 입니다. 그런데 PHP는 웹에서도 사용한 언어중 대표적인 언어로 알려져 있습니다. 오늘은 이 PHP를 웹서버에 연동하여 사용해보겟습니다. 


php fpm 설치

php fpm 는 php 에 의존성이 있으므로 같이 설치해 줍시다.

[root@nadeshiko ~]# rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
[root@nadeshiko ~]# yum -y install yum-utils
[root@nadeshiko ~]# yum update

이제 PHP를 설치할수 있게 되었습니다. 자신이 설치하고 싶은 버전을 찻아 설치해봅시다.

PHP 5.4

[root@nadeshiko ~]# yum -y install php php-fpm php-common

PHP 7.0

[root@nadeshiko ~]# yum-config-manager --enable remi-php7.0
[root@nadeshiko ~]# yum -y install php php-fpm php-common

PHP 7.1

[root@nadeshiko ~]# yum-config-manager --enable remi-php7.1
[root@nadeshiko ~]# yum -y install php php-fpm php-common

PHP 7.2

[root@nadeshiko ~]# yum-config-manager --enable remi-php7.2
[root@nadeshiko ~]# yum -y install php php-fpm php-common

PHP 7.3

[root@nadeshiko ~]# yum-config-manager --enable remi-php7.3
[root@nadeshiko ~]# yum -y install php php-fpm php-common

설치가 완료 되었다면 php fpm 데몬을 서버가 시작할때 자동으로 실행되게 해줍니다.

[root@nadeshiko nginx]# systemctl enable php-fpm

이제 php fpm 을 실행합니다.

[root@nadeshiko nginx]# service php-fpm start

nginx 수정

nginx의 컨피그 파일을 수정해줍시다.

[root@nadeshiko nginx]# vi /etc/nginx/conf.d/default.conf
server { 
   listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

location 의 index 항목에 index.php 를 추가하고, location ~ \.php$ { 항목의 주석을 모두 삭제한 다음, /scripts 를 /usr/share/nginx/html 로 바꿉니다. 이제 아래 명령어 들을 입력하여 웹서버를재시작 해줍시다.

[root@nadeshiko nginx]# service nginx restart

이제 php 가 실행되는지 확인을 해야합니다. 아래 명령어를 통해 PHP 확인 페이지를 아래 내용처럼 작성해줍니다.

[root@nadeshiko nginx]# vi /usr/share/nginx/html/phpinfo.php
<?php	
phpinfo();
?>

이제 http://웹서버IP또는도메인/phpinfo.php 로 접속을 합니다. 에러가 뜨면 문제가 발생한것입니다. 에러가 뜰시 댓글로 알려주시기 바랍니다.


마치며...

오늘은 nginx 웹서버를 이용해 php 연동을 해보았습니다. 다음시간에는 cgi 란 무엇이며, php fpm 도 무엇인지 알려드리겟습니다.
이 강의는 여러번의 자체 검수와 여러 국/내외 자료와 제 지식과 경험을 바탕으로 여러분들이 리눅스라는 다른 플랫폼을 체험하고,
사용하며, 익혀볼수 있는 기회를 만듭니다. 이 강좌가 가치가 있었다 혹은 도움이 됫다면 추천 한번씩 눌러주시기 바랍니다.
그리고 댓글을 통해 수시로 답변을 통해 글 내용을 고치며, 궁금한점을 해결해 드리겟습니다.


https://discord.gg/2gxSqWu - 마인크래프트 개발자 디스코드

Warning
댓글이 없습니다.

새로운 댓글을 등록해 주세요!

뉴스 및 창작물
/files/thumbnails/520/751/003/262x150.crop.jpg?20240328020349

레드스톤

마인크래프트 노트블록으로 만든 『 Bling‐Bang‐Bang‐Born 』 1

Sonttukk

2024-03-23

1

/files/thumbnails/467/742/003/262x150.crop.jpg?20240311163123

레드스톤

[노트블럭커버] MILGRAM -ミルグラム(밀그램)- / 아마네 「숙청 행진」 제 2심 2

리비온

2024-03-11

0

/files/thumbnails/846/741/003/262x150.crop.jpg?20240310221214

레드스톤

워든 vs 라마 200마리 1

GlassesFilm

2024-03-10

0

/files/thumbnails/542/739/003/262x150.crop.jpg?20240309070457

레드스톤

[고인의 명복을 빕니다][노트블럭]드래곤볼 GT 오프닝 - 점점 마음이 끌려

리비온

2024-03-09

0

/files/thumbnails/326/738/003/262x150.crop.jpg?20240328020414

레드스톤

마인크래프트 노트블록으로 만든 『 Build Our Machine 』

Sonttukk

2024-03-07

0