경량 http 서버인 nginx는 높은 동시 http 요청을 매우 잘 처리할 수 있습니다. 동시에 http 프록시 서버로 구성할 수도 있습니다. 백엔드 개발의 초보자로서 이렇게 훌륭한 오픈 소스 서버가 눈앞에 있기 때문에 신뢰할 수 있으려면 조사를 하고 뭔가를 배워야 합니다!
물론 nginx를 배우는 첫 번째 단계는 사용법을 배우는 것입니다.
먼저 공식 홈페이지 http://nginx.org/download/nginx-1.8.0.tar.gz에서 소스코드를 다운로드하고 압축을 풀고 nginx-1.8.0 디렉토리 .
nginx는 pcre 라이브러리를 사용하므로 pcre 소스 코드도 다운로드해야 합니다.
nginx-1.8.0/3rdparty/pcre-8.32에 pcre 소스코드를 추출한 후, 루트 디렉터리에서
<code>./configure --with-http_ssl_module --with-pcre=./3rdparty/pcre-8.32/ ./make ./sudo make install </code>
을 실행하면 기본 설치 디렉터리가 됩니다. /usr/로컬/nginx.
설치 과정에서 openssl 라이브러리가 누락되었다는 메시지가 표시될 수 있습니다. 직접 apt-get 설치를 수행할 수 있습니다.
nginx를 사용하기 전에 먼저 /home/bookxiao/ 아래에 nginx 디렉터리를 생성하여 리소스 파일을 저장한 다음 /usr/local/nginx 아래에 conf를 생성합니다. 빈번한 디렉토리 전환을 피하기 위해 sbin 및 로그를 사용하십시오.
<code>bookxiao<span>@ubuntuforfun</span><span>:~/nginx</span><span>$ </span>ls bin conf data logs</code>
nginx 구성 파일은 conf/ 아래에 있으며 이름은 nginx.conf입니다. 구성 파일을 구성하는 기본 단위는 "지시문"입니다. 명령은 이름, 매개변수 속성 및 끝에 있는 ':'의 세 부분으로 구성됩니다. 또한 일부 명령어는 { }로 둘러싸여 블록을 형성합니다. 블록에 일부 명령어가 포함되어 있으면 해당 블록을 "컨텍스트"라고도 합니다.
구성 파일의 모든 명령은 특정 컨텍스트 내에 있거나 어떤 컨텍스트에도 포함되지 않습니다(예: 기본 컨텍스트에 있음). 이는 C의 전역 변수와 다소 유사합니다.
예를 들어 간단한 구성 파일은 다음과 같습니다.
<code>bookxiao<span>@ubuntuforfun</span><span>:~/nginx/conf</span><span>$ </span>cat nginx.conf <span>#user nobody;</span> worker_processes <span>1</span>; events { worker_connections <span>1024</span>; } http { server { listen <span>80</span>; server_name localhost; location / { root html; index index.html index.htm; } location /images { root /home/bookxiao/nginx/data; } } }</code>
event, http, server는 모두 "context"입니다. "worker_processes 1;" 명령은 기본 컨텍스트에 있습니다. .
nginx의 기능을 간단히 테스트하려면 먼저 서버{} 블록을 구성하는 방법을 살펴보세요. nginx에서 각 서버 블록은 HTTP 서비스를 나타내며, 서버마다 포트와 server_name이 다릅니다.
이제 이미지가 있고 저장 경로가 ~/nginx/data/images/nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축.jpg라고 가정해 보겠습니다.
이제 브라우저에 http://127.0.0.1/images/nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축.jpg
을 입력하면 다음과 같이 표시됩니다.
위의 구성 파일을 주의 깊게 살펴보고 거기에 위치입니다. 블록은 다음과 같이 정의됩니다.
<code> location /images { root /home/bookxiao/nginx/<span><span>data</span>;</span> }</code>
위치가 뒤따르는 "/images"는 클라이언트의 URL 요청과 일치하는 접두사를 사용하는 데 사용됩니다. 일치하는 경우 루트 값이 앞에 추가됩니다. URL의 끝. 파일 시스템에서 리소스 파일을 찾으려면 새 URL을 구성합니다.
예를 들어 여기의 원래 URL은 '/images/nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축.jpg'이고 최종 URL은 '/home/bookxiao/nginx/data/images/nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축.jpg'입니다.
특정 URL과 일치하는 위치가 여러 개 있으면 어떻게 되나요? nginx의 전략은 일치하는 값이 가장 긴 위치를 선택하는 것입니다.
그래서 다음과 같이 서버를 추가할 수 있습니다:
<code> server { listen <span>9999</span>; server_name localhost_test; location /images { root /home/bookxiao/nginx/<span><span>data</span>/test;</span> } }</code>
그런 다음 sudo nginx -s reload
을 실행하여 구성 파일을 다시 로드할 수 있습니다. 그런 다음 data/ 아래에 새로운 test/images/ 디렉터리를 만듭니다. 이런 식으로 브라우저에 http://127.0.0.1:9999/images/nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축.img
를 입력합니다. 그러면 다음을 볼 수 있습니다:
저작권 표시: 이 기사는 블로거의 원본 기사이므로 블로거의 허가 없이 복제할 수 없습니다.
위는 nginx 연구 노트를 소개합니다. 1. nginx를 사용하여 내용을 포함한 간단한 HTTP 서버를 구축합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.