프로그래밍/PHP

nginx + PHP installation (for windows 10)

채윤아빠 2018. 10. 10. 14:20
728x90
반응형


  • nginx 다운로드 및 압축 풀기 ; v1.15.5
  • php 다운로드 및 압축 풀기 ; v7.2.10
    • php.ini 설정 파일 생성하기 ; 압축을 해제한 C:\Dev\php-7.2.10 폴더의 "php.ini-development" 파일을 "php.ini" 파일로 복사
  • php-cgi 실행
    C:\Dev\php-7.2.10>start php-cgi.exe -b 127.0.0.1:9000
    
  • nginx.conf 파일 수정 ; php 연동을 위한 설정
            # 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  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
    
    • 위와 같이 fastcgi 부분의 주석 해제
    • fastcgi_param 부분을 위와 같이 수정 ; 수정하지 않으면 다른 폴더의 php 접근시 "nginx No input file specified." 오류 발생
    • C:\Dev\nginx-1.15.5\html 폴더 아래에 p_info.php 파일 작성
      <?php
          phpinfo();
      ?>
      
  • nginx 서비스 시작
    C:\Dev\nginx-1.15.5>start nginx
    
  • phpinfo 확인하기
    • 브라우저를 열고 http://localhost/p_info.php 를 열어서 정상적으로 phpinfo()가 호출되는지 확인
    • 오류 메시지 등에 따라 nginx.conf 등을 수정하여 문제 해결
  • nginx 프로세스 확인하기
    C:\Dev\nginx-1.15.5>tasklist /fi "imagename eq nginx.exe" 
    
    이미지 이름                    PID 세션 이름              세션#  메모리 사용
    ========================= ======== ================ =========== ============
    nginx.exe                    11424 Console                    3      7,196 K
    nginx.exe                    12140 Console                    3      7,688 K
    
  • nginx 서비스 종료하기
    # fast shutdown
    C:\Dev\nginx-1.15.5>nginx -s stop
    # graceful shutdown
    C:\Dev\nginx-1.15.5>nginx -s quit
    
    # force shutdown
    C:\Dev\nginx-1.15.5>taskkill /f /pid 11424 /pid 12140
    성공: 프로세스(PID 11424)가 종료되었습니다.
    성공: 프로세스(PID 12140)가 종료되었습니다.
    

참고자료