본문 바로가기

쓰기

nginx 설치방법

haru 2017.11.28 10:24 조회 수 : 14

Nginx 는 러시아에서 만든 웹서버로 접속이 많을 경우에도 안정적인 처리량을 보여주기때문에 사용자가 늘어나고 있는 추세이다. 다만 Nginx 에서 동적페이지인 PHP를 구동할 경우 오히려 Apache보다 처리능력이 떨어지기 때문에 이미지 웹서버만 분리해서 운영하려고 할때 좋은 성능을 보여준다.

가벼운 nginx를 전면에 두고 PHP처리가 필요한 호출에 대해서는 백단의 Apache에서 처리하도록 할 것이다.
Nginx 는 80포트, Apache는 으로 설정

Apache, PHP, MySql 등은 YUM을 통해 설치된 상태임. Apache포트는 으로 변경(가상호스트도 마찬가지)

1. Nginx 최신버젼 다운로드
wget http://nginx.org/download/nginx-1.1.0.tar.gz

2. configure 및 설치
./configure --prefix=/usr/local/nginx && make && make install
다른 옵션도 많으니 ./configure --help 로 확인해볼 것. 

3. 환경설정
/usr/local/nginx/conf/nginx.conf 에보면 예제로 PHP확장자의 처리에 대한 부분이 있다.
주석처리된 부분을 아래와 같이 수정한다.

location ~ \.php$ {

    proxy_pass   http://127.0.0.1:;

}
여러 확장자를 처리하고 싶으면  ~ \.(php|htm|html)$ 과 같이 쓰면 됨

 

4. 실행
/usr/local/nginx/sbin/nginx 를 실행하면 웹서버가 시작함

5. 종료
별도의 스크립트나 옵션을 제공하지 않으므로 kill을 이용해야 한다.
nginx.conf 에서 pid 경로 설정을 수정하지 않았으면 nginx.pid 파일이 /usr/local/nginx/logs/nginx.pid 에 생성되므로
kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 명령으로 종료시킴
다만 현재 Centos 6에 설치했는데 -HUP 옵션을 붙이면 종료가 안되서 그냥 
kill `cat /usr/local/nginx/logs/nginx.pid` 로 종료시키고 있음

 

 

참고사항

./nginx –t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

 

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

 

 

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

 > 80번 프토가 이미 사용중.