CentOS 7 설치 Nginx 및 설정

45154 단어 linux
출처:https://blog.csdn.net/wxyjuly/article/details/79443432
   Nginx            、       。   Apache、lighttpd       ,       。**               。**

설치 하 다.
  1. Centos ,yum nginx , yum 。 ,** root **:
  2. (nginx gzip zlib ,rewrite pcre ,ssl openssl )。 **/usr/ local** , 。

1. gcc gcc-c++( , )

  1. $ yum install -y gcc gcc-c++


  2. 2. PCRE 라 이브 러 리 설치
    1. $ cd /usr/local/
    2. $ wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz
      $ tar -zxvf pcre-8.36.tar.gz
      $ cd pcre-8.36
      $ ./configure
      $ make && make install

      :configure: error: You need a C++ compiler for C++ support
      :yum install -y gcc gcc-c++


      3. SSL 라 이브 러 리 설치
      1. $ cd /usr/ local/
      2. $ wget http://www.openssl.org/ source/openssl-1.0.1j.tar.gz
      3. $ tar -zxvf openssl-1.0.1j.tar.gz
      4. $ cd openssl-1.0.1j
      5. $ ./config
      6. $ make && make install
      7. 4. zlib

      $ cd /usr/local/
      $ wget http://zlib.net/zlib-1.2.11.tar.gz
      $ tar -zxvf zlib-1.2.11.tar.gz
      $ ./configure
      $ make && make install

      
      

      4. nginx

      1. $ cd /usr/local/
      2. $ wget http://nginx.org/download/nginx-1.8.0.tar.gz
        $ tar -zxvf nginx-1.8.0.tar.gz
        $ cd nginx-1.8.0
        $ ./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
        ( : --with-http_ssl_module: nginx.conf ssl:on , nginx: [emerg] unknown directive "ssl" in /opt/nginx/conf/nginx.conf )
        $ make && make install

        :./configure: error: the HTTP gzip module requires the zlib library


        – prefix 뒤에 다음 명령 을 받 습 니 다:
        1. --with-pcre=/usr/local/pcre-8.36 pcre-8.36 。--with-zlib=/usr/local/zlib-1.2.8 zlib-1.2.8


        2. 설치 스 크 립 트 를 다운로드 하려 면 여 기 를 누 르 십시오.
          5. 시동
          $ /usr/local/nginx/sbin/nginx
          

          시작 성공 여 부 를 확인 합 니 다:
          브 라 우 저 를 열 어 이 기기 의 IP 에 접근 합 니 다. 브 라 우 저 에 Welcome to nginx 가 나타 나 면!Nginx 가 설치 되 어 실행 에 성공 했다 는 뜻 입 니 다.
          부분 명령 은 다음 과 같 습 니 다: 다시 시작:
          $ /usr/local/nginx/sbin/nginx –s reload
          

          정지:
          $ /usr/local/nginx/sbin/nginx –s stop
          

          설정 파일 이 정상 인지 테스트 하기:
           $ /usr/local/nginx/sbin/nginx –t
          

          강제 종료:
          1. $ pkill nginx


          2. 배치 하 다.
            위 설치 방법 nginx 설정 파일 은
            / usr / local / nginx / conf / nginx. confNginx 설정 파일 의 일반적인 구 조 는 밖에서 안 으로 'http', 'server', 'location' 등 이 고 결 성 된 계승 관 계 는 밖에서 안 으로 이다. 즉, 내부 블록 은 외부 블록 의 값 을 자동 으로 가 져 와 결 성 된 값 으로 한다.
            Server
            요청 을 받 은 서버 는 서로 다른 요청 을 규칙 에 따라 다른 백 엔 드 서버 에 전송 해 야 합 니 다. nginx 에 서 는 가상 호스트 (server) 개념 을 구축 하여 서로 다른 서비스 설정 을 격 리 할 수 있 습 니 다.
            server {listen 80;server_name localhost;root html;index index.html index.htm;}
            예 를 들 어 우리 가 가지 고 노 는 두 개의 키 항목 인 passport 와 wan 은 nginx 설정 파일 에서 두 개의 server 를 설정 할 수 있 습 니 다. server name 은 각각 passport. bigertech. com 과 wan. bigertech. com 입 니 다.이렇게 하면 서로 다른 url 요청 은 nginx 에 해당 하 는 설정 에 대응 하여 서로 다른 백 엔 드 서버 에 전 송 됩 니 다.여기 listen 감청 포트name IP 나 도 메 인 이름 을 지정 하 는 데 사용 되 며, 여러 도 메 인 이름 이 통 일 된 규칙 에 대응 하여 빈 칸 으로 나 눌 수 있 습 니 다. index 접근 할 기본 홈 페이지 주소, 루트 를 설정 합 니 다. 명령 은 가상 호스트 의 웹 페이지 와 디 렉 터 리 를 지정 하 는 데 사 용 됩 니 다. 이 곳 은 상대 주소 일 수도 있 고 절대 주소 일 수도 있 습 니 다.일반적으로 nginx. conf 에 여러 개의 server 를 설정 하여 서로 다른 요청 을 설정 할 수 있 습 니 다.이렇게:
            server {listen 80;server_name host1;root html;index index.htmlindex.htm;}server {listen 80;server_name host2;root /data/www/html;index index.html index.htm;}
            그러나 server 가 2 개 를 넘 으 면 가상 호스트 에 대한 설정 을 다른 파일 에 두 고 메 인 프로필 nginx. conf 에 include 명령 을 포함 하 는 것 을 권장 합 니 다.관리 에 더욱 편리 하 다.
            include vhosts/*.conf;
            vhosts 파일 을 다 포함 시 킬 수 있 습 니 다.
            Location 모든 url 요청 에 대응 하 는 서비스 입 니 다. nginx 는 퍼 가기 나 로 컬 파일 경 로 를 처리 하거나 다른 서버 의 서비스 경 로 를 처리 합 니 다.이 경로 의 매 칭 은 location 을 통 해 이 루어 집 니 다.서버 를 도 메 인 이름 에 대응 하 는 설정 으로 사용 할 수 있 으 며, location 은 도 메 인 이름 아래 에서 더 정교 한 경 로 를 설정 합 니 다.
            위의 예 를 들 어 루트 와 index 명령 을 하나의 location 에 넣 을 수 있 습 니 다. 이 location 에 일치 할 때 만 루트 뒤의 내용 에 접근 할 수 있 습 니 다.
            location / {
            1. root /data/www/host2;
            2. index index.html index.htm;

            }

            location

            ~ ,
            ~* ,
            ^~ ^~ , , , ,
            =

            location = / {
            # "/". [ configuration A ]
            }
            location / {
            # , "/" # [ configuration B ]
            }
            location ^~ /images/ {
            # /images/ ,
            location [ configuration C ]
            }
            location ~* .(gif|jpg|jpeg)$ {
            # gif, jpg, or jpeg .
            # /images/ [Configuration C] .
            [ configuration D ]
            }
            :/ -> configuration A
            /documents/document.html -> configuration B
            /images/1.gif -> configuration C
            /documents/1.jpg -> configuration D


             root aliasp’s 。 :
            alias
            alias , /。

            location /c/ {
            alias /a/;
            }

            root
            root , location 。

            location /c/ {
            root /a/;
            }

            , location 「autoindex on; 」


            8001 , :

            location / {
            proxy_pass 172.16.1.1:8001;
            }

            host , 172.16.1.1 8001 。

            upstream myserver; {
            ip_hash;
            server 172.16.1.1:8001;
            server 172.16.1.2:8002;
            server 172.16.1.3;
            server 172.16.1.4;
            }
            location / {
            proxy_pass http://myserver;
            }

            upstream , myserver, proxypass myserver upstream 。 ip_hash ip 。 、 、fair、url_hash 。

            nginx 、 。 nginx , upstream upstream , server location http core , limt , mail ,https ssl 。 nginx 。


               Nginx            、       。   Apache、lighttpd       ,       。**               。**
            


            1. Centos ,yum nginx , yum 。 ,** root **:
            2. (nginx gzip zlib ,rewrite pcre ,ssl openssl )。 **/usr/ local** , 。

            1. gcc gcc-c++( , )

            1. $ yum install -y gcc gcc-c++


            2. 2. PCRE 라 이브 러 리 설치
              1. $ cd /usr/local/
              2. $ wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz
                $ tar -zxvf pcre-8.36.tar.gz
                $ cd pcre-8.36
                $ ./configure
                $ make && make install

                :configure: error: You need a C++ compiler for C++ support
                :yum install -y gcc gcc-c++


                3. SSL 라 이브 러 리 설치
                1. $ cd /usr/ local/
                2. $ wget http://www.openssl.org/ source/openssl-1.0.1j.tar.gz
                3. $ tar -zxvf openssl-1.0.1j.tar.gz
                4. $ cd openssl-1.0.1j
                5. $ ./config
                6. $ make && make install
                7. 4. zlib

                $ cd /usr/local/
                $ wget http://zlib.net/zlib-1.2.11.tar.gz
                $ tar -zxvf zlib-1.2.11.tar.gz
                $ ./configure
                $ make && make install

                
                

                4. nginx

                1. $ cd /usr/local/
                2. $ wget http://nginx.org/download/nginx-1.8.0.tar.gz
                  $ tar -zxvf nginx-1.8.0.tar.gz
                  $ cd nginx-1.8.0
                  $ ./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
                  ( : --with-http_ssl_module: nginx.conf ssl:on , nginx: [emerg] unknown directive "ssl" in /opt/nginx/conf/nginx.conf )
                  $ make && make install

                  :./configure: error: the HTTP gzip module requires the zlib library


                  – prefix 뒤에 다음 명령 을 받 습 니 다:
                  1. --with-pcre=/usr/local/pcre-8.36 pcre-8.36 。--with-zlib=/usr/local/zlib-1.2.8 zlib-1.2.8


                  2. 설치 스 크 립 트 를 다운로드 하려 면 여 기 를 누 르 십시오.
                    5. 시동
                    $ /usr/local/nginx/sbin/nginx
                    

                    시작 성공 여 부 를 확인 합 니 다:
                    브 라 우 저 를 열 어 이 기기 의 IP 에 접근 합 니 다. 브 라 우 저 에 Welcome to nginx 가 나타 나 면 Nginx 가 설치 되 어 실행 되 었 음 을 표시 합 니 다.
                    부분 명령 은 다음 과 같 습 니 다: 다시 시작:
                    $ /usr/local/nginx/sbin/nginx –s reload
                    

                    정지:
                    $ /usr/local/nginx/sbin/nginx –s stop
                    

                    설정 파일 이 정상 인지 테스트 하기:
                     $ /usr/local/nginx/sbin/nginx –t
                    

                    강제 종료:
                    1. $ pkill nginx


                    2. 배치 하 다.
                      위 설치 방법 nginx 설정 파일 은
                      / usr / local / nginx / conf / nginx. confNginx 설정 파일 의 일반적인 구 조 는 밖에서 안 으로 'http', 'server', 'location' 등 이 고 결 성 된 계승 관 계 는 밖에서 안 으로 이다. 즉, 내부 블록 은 외부 블록 의 값 을 자동 으로 가 져 와 결 성 된 값 으로 한다.
                      Server
                      요청 을 받 은 서버 는 서로 다른 요청 을 규칙 에 따라 다른 백 엔 드 서버 에 전송 해 야 합 니 다. nginx 에 서 는 가상 호스트 (server) 개념 을 구축 하여 서로 다른 서비스 설정 을 격 리 할 수 있 습 니 다.
                      server {listen 80;server_name localhost;root html;index index.html index.htm;}
                      예 를 들 어 우리 가 가지 고 노 는 두 개의 키 항목 인 passport 와 wan 은 nginx 설정 파일 에 두 개의 server 를 설정 할 수 있 습 니 다. server name 은 각각 passport. bigertech. com 과 wan. bigertech. com 입 니 다. 그러면 서로 다른 url 요청 은 nginx 에 해당 하 는 설정 에 대응 하여 서로 다른 백 엔 드 서버 로 전 송 됩 니 다. listen 감청 포트 IP 나 도 메 인 이름 을 지정 하 는 데 사용 되 며, 여러 도 메 인 이름 이 통 일 된 규칙 에 대응 하여 빈 칸 으로 나 눌 수 있 습 니 다. index 접근 할 기본 홈 페이지 주소, 루트 를 설정 합 니 다. 명령 은 가상 호스트 의 웹 페이지 와 디 렉 터 리 를 지정 하 는 데 사 용 됩 니 다. 이 곳 은 상대 주소 일 수도 있 고 절대 주소 일 수도 있 습 니 다. 일반적으로 nginx. conf 에 여러 개의 server 를 설정 하여 서로 다른 요청 을 설정 할 수 있 습 니 다. 이렇게:
                      server {listen 80;server_name host1;root html;index index.htmlindex.htm;}server {listen 80;server_name host2;root /data/www/html;index index.html index.htm;}
                      그러나 server 가 2 개 를 넘 었 을 때 가상 호스트 에 대한 설정 을 다른 파일 에 두 고 메 인 프로필 nginx. conf 에 include 명령 을 포함 시 키 는 것 을 권장 합 니 다. 관리 하기 편 합 니 다.
                      include vhosts/*.conf;
                      vhosts 파일 을 다 포함 시 킬 수 있 습 니 다.
                      Location 모든 url 요청 에 대응 하 는 서비스 입 니 다. nginx 는 퍼 가기 나 로 컬 파일 경 로 를 처리 하거나 다른 서버 의 서비스 경 로 를 처리 합 니 다. 이 경로 의 일치 성 은 location 을 통 해 이 루어 집 니 다. server 를 도 메 인 이름 에 대응 하 는 설정 으로 사용 할 수 있 습 니 다. location 은 도 메 인 이름 아래 더 정교 한 경 로 를 입력 합 니 다.줄 설정.
                      위의 예 를 들 어 루트 와 index 명령 을 하나의 location 에 넣 을 수 있 습 니 다. 이 location 에 일치 할 때 만 루트 뒤의 내용 에 접근 할 수 있 습 니 다.
                      location / {
                      1. root /data/www/host2;
                      2. index index.html index.htm;

                      }

                      location

                      ~ ,
                      ~* ,
                      ^~ ^~ , , , ,
                      =

                      location = / {
                      # "/". [ configuration A ]
                      }
                      location / {
                      # , "/" # [ configuration B ]
                      }
                      location ^~ /images/ {
                      # /images/ ,
                      location [ configuration C ]
                      }
                      location ~* .(gif|jpg|jpeg)$ {
                      # gif, jpg, or jpeg .
                      # /images/ [Configuration C] .
                      [ configuration D ]
                      }
                      :/ -> configuration A
                      /documents/document.html -> configuration B
                      /images/1.gif -> configuration C
                      /documents/1.jpg -> configuration D


                       root aliasp’s 。 :
                      alias
                      alias , /。

                      location /c/ {
                      alias /a/;
                      }

                      root
                      root , location 。

                      location /c/ {
                      root /a/;
                      }

                      , location 「autoindex on; 」


                      8001 , :

                      location / {
                      proxy_pass 172.16.1.1:8001;
                      }

                      host , 172.16.1.1 8001 。

                      upstream myserver; {
                      ip_hash;
                      server 172.16.1.1:8001;
                      server 172.16.1.2:8002;
                      server 172.16.1.3;
                      server 172.16.1.4;
                      }
                      location / {
                      proxy_pass http://myserver;
                      }

                      upstream , myserver, proxypass myserver upstream 。 ip_hash ip 。 、 、fair、url_hash 。

                      nginx 、 。 nginx , upstream upstream , server location http core , limt , mail ,https ssl 。 nginx 。

좋은 웹페이지 즐겨찾기