안녕하세요. 송기석입니다.


오늘은 nginx에서 php 설정 시 502 에러가 발생하여 해결한 부분의 팁입니다.

제가 설정한 파일의 일부입니다.


location ~ \.php$ {

        fastcgi_split_path_info ^(.+\.php)(/.+)$;

        fastcgi_pass unix:/var/run/php5-fpm.sock;

        fastcgi_index index.php;

        include fastcgi_params;

}


특별히 문제가 될 부분이 없는 것 같은데 오류가 발생하여 찾다 보니 다음 파일을 확인하면서 문제를 발견했습니다.


/etc/php5/fpm/pool.d/www.conf


; The address on which to accept FastCGI requests.

; Valid syntaxes are:

;   'ip.add.re.ss:port'    - to listen on a TCP socket to a specific address on

;                            a specific port;

;   'port'                 - to listen on a TCP socket to all addresses on a

;                            specific port;

;   '/path/to/unix/socket' - to listen on a unix socket.

; Note: This value is mandatory.

listen = 127.0.0.1:9000



마지막에 listen = 127.0.0.1:9000 으로 설정되어 있습니다.


설정파일을 다음과 같이 설정하고 문제를 해결했습니다.


location ~ \.php$ {

        fastcgi_split_path_info ^(.+\.php)(/.+)$;

#       fastcgi_pass unix:/var/run/php5-fpm.sock;

        fastcgi_pass 127.0.0.1:9000;

        fastcgi_index index.php;

        include fastcgi_params;

}


따라 하다 보면 대부분 잘되는데 가끔 알지 못하는 부분에서 문제가 생기면 간단한 것인데 불구하고

해결하는데 시간이 걸립니다.


다음번에는 이와 같은 문제가 발생하면 바로 해결할 수 있을 것 같습니다.

감사합니다.