본문 바로가기
homaki.tistory.com의 구글 광고
컴퓨터

윈도우(Windows) nginx와 php 연동하기

by homaki 2014. 11. 15.
◆ 이 블로그의 모든 게시물은 여러 방법을 이용해 다른 곳으로 퍼가는 것은 절대 허용하지 않습니다.
◆ 단, 게시물 링크를 남기는 것만 허용합니다.
이 문장 바로 아래글 내용 끝에 바로 나오는 광고티스토리 자체광고로 이 블로그와 무관합니다.

 http 서버인 nginx와 웹프로그래밍 언어인 php의 연동 방법이다. xe엔진 스킨을 만들기 위해 리눅스를 설치하여 멀티부팅을 해서 사용하고 있었으나 불편해서... 가상머신을 이용하는 방법도 있지만 컴퓨터가 안 따라줘서... 애초에 가상머신으로 무리가 없었으면 리눅스 멀티부팅을 할 이유가 없잖아...? 아무튼 이 글은 nginx 1.7.7과 php 5.6.3 기준으로 작성하였다.


 nginx 홈페이지

  http://nginx.org


 php 윈도우용 홈페이지

  http://windows.php.net


 nginx와 php를 다운받고 압축을 풀어준다. 경로는 d:\server\nginx와 d:\server\php를 기준으로 작성한다. 둘을 다운받아 압축을 풀었으면 환경설정 파일을 조금 수정해야 한다. 먼저 php 환경설정 파일을 바꾸자. php 폴더에 들어가면 php.ini-development와 php.ini-production 파일이 보인다. 둘 중 아무거나 파일명을 php.ini로 바꾸면 된다.



 이것으로 php 설치는 끝이다. 이제 nginx를 설정해보자. nginx 폴더에 들어가면 conf라는 폴더가 있다. 이 안에 있는 nginx.conf를 메모장 등으로 열자. 대충 35line을 보면


  server {

    listen 80;

    server_name 127.0.0.1;


 이런 부분이 있다. 이 안에


  location / {

    root html;

    index index.html index.htm index.php;


 위 부분을 찾아 index.php를 추가해준다. 그리고


  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000


 이런 주석이 달린 곳을 찾아보자. 대충 66line에 있다. 그 밑을 보면


  #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;

  #}


 위와 같이 #으로 주석처리가 된 부분이 있는데 #을 모두 지워준다. 그 다음에 fastcgi_param에서 /scripts$fastcgi_script_name; 부분의 /scripts를 nginx root 폴더를 적어준다. 처음에 작성한 경로를 기준으로 적어보겠다.


  fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;


 이것을 아래와 같이 바꾼다.


  fastcgi_param SCRIPT_FILENAME d:/server/nginx/html$fastcgi_script_name;


 이렇게 바꿔주고 저장하면 된다. 여기까지가 nginx와 php의 연동 설정이다.


 nginx 폴더로 들어가 nginx와 php를 실행해보자. cmd를 실행해서 d:\server로 들어가서


  D:\server\nginx> nginx

  D:\server\php>php-cgi -b 127.0.0.1:9000


 위 명령으로 둘을 실행한다. 그리고 nginx 폴더 안에 있는 html 폴더에 phpinfo.php 파일을 만들어준다. 내용은


  <?php phpinfo(); ?>


 위 한 줄만 적어주고 저장을 한다. 그리고 웹브라우저를 실행해서 http://localhost/phpinfo.php로 들어가 아래와 같은 내용이 나오면 제대로 연동이 된 것이다. 아, php-cgi를 실행하고 콘솔창을 끄면 안 된다. php가 종료된다. 이것에 관해서는 나중에 따로 작성할 것이다.



 이것으로 윈도우용 nginx와 php의 연동 끝. nginx를 종료하는 방법은


  D:\server\nginx> nginx -s stop


 위 명령어를 이용하면 된다. 다음은 php와 mariadb(mysql) 연동을 작성해보겠다.


 2014/11/17 - [컴퓨터] - 윈도우(Windows) php와 mariadb(mysql) 연동하기

댓글

homaki.tistory.com의 구글 광고