>백엔드 개발 >PHP 튜토리얼 >nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축

nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축

WBOY
WBOY원래의
2016-07-30 13:31:341274검색

경량 http 서버인 nginx는 높은 동시 http 요청을 매우 잘 처리할 수 있습니다. 동시에 http 프록시 서버로 구성할 수도 있습니다. 백엔드 개발의 초보자로서 이렇게 훌륭한 오픈 소스 서버가 눈앞에 있기 때문에 신뢰할 수 있으려면 조사를 하고 뭔가를 배워야 합니다!

물론 nginx를 배우는 첫 번째 단계는 사용법을 배우는 것입니다.

1 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 설치를 수행할 수 있습니다.

2 nginx 구성

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을 입력하면 다음과 같이 표시됩니다.

nginx 연구 노트 1 nginx를 사용하여 간단한 HTTP 서버 구축

위의 구성 파일을 주의 깊게 살펴보고 거기에 위치입니다. 블록은 다음과 같이 정의됩니다.

<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 서버 구축

저작권 표시: 이 기사는 블로거의 원본 기사이므로 블로거의 허가 없이 복제할 수 없습니다.

위는 nginx 연구 노트를 소개합니다. 1. nginx를 사용하여 내용을 포함한 간단한 HTTP 서버를 구축합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.