centos 에서 nginx 를 컴 파일 하고 ssl 을 지원 합 니 다.

15464 단어 IT 운영nginx
컴 파일 환경 과 필요 한 라 이브 러 리 설치
[root@localhost ~]# yum -y install gcc gcc-c++ autoconf automake libtool make cmake
[root@localhost ~]# yum -y install zlib zlib-devel openssl openssl-devel pcre-devel

설명 하 다.
zlib: nginx 에 gzip 모듈 을 제공 하려 면 zlib 라 이브 러 리 가 openssl 을 지원 해 야 합 니 다. nginx 에 ssl 기능 pcre: 주소 재 작성 rewrite 기능 을 지원 하기 위해 일부 운영 체제 에 서 는 yum install pcre - devel 을 사용 하여 설치 해 야 합 니 다. 패키지 가 부족 하여 설치 에 실 패 했 기 때문에 수 동 으로 설치 해 야 합 니 다.
수 동 설치 pcre
[root@localhost ~]#wget https://sourceforge.net/projects/pcre/files/pcre/8.39/pcre-8.39.tar.gz
[root@localhost ~]#tar -zxvf pcre-8.39.tar.gz
[root@localhost ~]#cd pcre-8.39
[root@localhost ~]#./configure
[root@localhost ~]#make
[root@localhost ~]#make install

nginx 를 실행 할 사용자 및 그룹 만 들 기
[root@localhost ~]#groupadd nginx
[root@localhost ~]#useradd -M -s /sbin/nologin -g nginx nginx

설명 하 다.
- g 매개 변 수 는 nginx 사용자 에 게 그룹 을 지정 합 니 다. -M 매개 변 수 는 홈 디 렉 터 리 를 자동 으로 생 성하 지 않도록 합 니 다.
컴 파일 설치 Nginx
[root@localhost ~]#wget http://nginx.org/download/nginx-1.10.1.tar.gz
[root@localhost ~]#ls
[root@localhost ~]#tar -zxvf nginx-1.10.1.tar.gz 
[root@localhost ~]#cd nginx-1.10.1
[root@localhost ~]#ls
[root@localhost ~]#./configure --prefix=/usr/local/nginx --with-http_ssl_module --user=nginx --group=nginx --with-pcre 
[root@localhost ~]#make
[root@localhost ~]#make install

시동 을 걸다
[root@localhost ~]# /usr/local/nginx/sbin/nginx     
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s stop    
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload      
[root@localhost ~]# /usr/local/nginx/sbin/nginx -v      
[root@localhost ~]# /usr/local/nginx/sbin/nginx -t            
[root@localhost ~]# pkill nginx      

설치 상태 보기
[root@localhost ~]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.10.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) 
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --user=nginx --group=nginx --with-pcre

nginx 프로필
[root@localhost ~]# /usr/local/nginx/conf/nginx.conf

Nginx 프로필 의 일반적인 구 조 는 밖에서 안 으로 'http', 'server', 'location' 등 이 있 습 니 다. 결 성 된 계승 관 계 는 밖에서 안 으로 입 니 다. 즉, 내부 블록 은 외부 블록 의 값 을 자동 으로 가 져 와 결 성 된 값 으로 합 니 다.
서버 가 요청 을 받 은 서버 는 서로 다른 요청 을 규칙 에 따라 다른 백 엔 드 서버 에 전송 해 야 합 니 다. nginx 에서 가상 호스트 (server) 개념 을 구축 하여 서로 다른 서비스 설정 을 격 리 할 수 있 습 니 다.
server {
    listen       80;
    server_name  localhost;
    root   html;
    index  index.html index.htm;
}

설명 하 다.
listen 지시 감청 포트 servername 은 IP 나 도 메 인 이름 을 지정 하 는 데 사 용 됩 니 다. 여러 도 메 인 이름 은 통 일 된 규칙 에 대응 합 니 다. 루트 명령 을 빈 칸 으로 나 누 어 가상 호스트 의 웹 페이지 와 디 렉 터 리 를 지정 할 수 있 습 니 다. 이 곳 은 상대 주소 일 수도 있 고 절대 주소 index 는 방문 의 기본 홈 페이지 주 소 를 설정 하 는 데 사 용 됩 니 다.
일반적으로 nginx. conf 에 여러 개의 server 를 설정 하여 서로 다른 요청 을 설정 할 수 있 습 니 다.예 를 들 어 두 개의 server 를 설정 합 니 다. server name 은 각각 test 1. euming. com 과 test 2. euming. com 입 니 다. 이렇게:
server {
    listen       80;
    server_name  test1.euming.com;
    root   html;
    index  index.html index.htm;
}
server {
    listen       80;
    server_name  test2.euming.com;
    root   /data/www/html;
    index  index.html index.htm;
}

그러나 server 가 2 개 를 넘 으 면 가상 호스트 에 대한 설정 을 다른 파일 에 두 고 메 인 프로필 nginx. conf 에 include 명령 을 포함 하 는 것 을 권장 합 니 다.관리 에 더욱 편리 하 다.
include vhosts/*.conf;

vhosts 파일 을 다 포함 시 킬 수 있 습 니 다.
Localtion
모든 url 요청 에 대응 하 는 서비스 입 니 다. nginx 는 퍼 가기 나 로 컬 파일 경 로 를 처리 하거나 다른 서버 의 서비스 경 로 를 처리 합 니 다.이 경로 의 매 칭 은 location 을 통 해 이 루어 집 니 다.서버 를 도 메 인 이름 에 대응 하 는 설정 으로 사용 할 수 있 으 며, location 은 도 메 인 이름 아래 에서 더 정교 한 경 로 를 설정 합 니 다.
위의 예 를 들 어 루트 와 index 명령 을 하나의 location 에 넣 을 수 있 습 니 다. 이 location 에 일치 할 때 만 루트 뒤의 내용 에 접근 할 수 있 습 니 다.
문 / chrisxlq (약서 작성 자) 원문 링크:http://www.jianshu.com/p/d5114a2a2052 저작권 은 작가 에 게 있 습 니 다. 전 재 는 작가 에 게 연락 하여 권한 을 수 여 받 고 '약서 작가' 라 고 표시 하 십시오.
부록: nginx 컴 파일 매개 변 수 는 다음 과 같 습 니 다.
--prefix= --     ,      ,   /usr/local/nginx。
--sbin-path= -- nginx        ,      ,   /sbin/nginx--conf-path= --      -c        nginx.conf     ,      ,   /conf/nginx.conf。
--pid-path= -- nginx.pid   ,     nginx.conf   “pid”    ,   /logs/nginx.pid。
--lock-path= -- nginx.lock    ,      ,   /logs/nginx.lock。
--error-log-path= --     nginx.conf   “error_log”            ,      ,   /logs/error.log。
--http-log-path= --     nginx.conf   “access_log”            ,      ,   /logs/access.log。
--user= --     nginx.conf   “user”     nginx     ,      ,   “nobody”。
--group= --     nginx.conf   “user”     nginx    ,      ,   “nobody”。
--builddir=DIR --       。
--with-rtsig_module --   rtsig  。
--with-select_module --without-select_module --    configure       kqueue, epoll, rtsig /dev/poll    ,select         。
--with-poll_module --without-poll_module --    configure       kqueue, epoll, rtsig /dev/poll    ,poll         。
--with-http_ssl_module --   ngx_http_ssl_module,  SSL        HTTPSOpenSSLDebian   ,     libssl-dev。
--with-http_realip_module --   ngx_http_realip_module
--with-http_addition_module --   ngx_http_addition_module
--with-http_sub_module --   ngx_http_sub_module
--with-http_dav_module --   ngx_http_dav_module
--with-http_flv_module --   ngx_http_flv_module
--with-http_stub_status_module --   ”server status”(    ) 
--without-http_charset_module --   ngx_http_charset_module
--without-http_gzip_module --   ngx_http_gzip_module,    ,  zlib 。
--without-http_ssi_module --   ngx_http_ssi_module
--without-http_userid_module --   ngx_http_userid_module
--without-http_access_module --   ngx_http_access_module
--without-http_auth_basic_module --   ngx_http_auth_basic_module
--without-http_autoindex_module --   ngx_http_autoindex_module
--without-http_geo_module --   ngx_http_geo_module
--without-http_map_module --   ngx_http_map_module
--without-http_referer_module --   ngx_http_referer_module
--without-http_rewrite_module --   ngx_http_rewrite_module。    ,  PCRE--without-http_proxy_module --   ngx_http_proxy_module
--without-http_fastcgi_module --   ngx_http_fastcgi_module
--without-http_memcached_module --   ngx_http_memcached_module
--without-http_limit_zone_module --   ngx_http_limit_zone_module
--without-http_empty_gif_module --   ngx_http_empty_gif_module
--without-http_browser_module --   ngx_http_browser_module
--without-http_upstream_ip_hash_module --   ngx_http_upstream_ip_hash_module
--with-http_perl_module --   ngx_http_perl_module
--with-perl_modules_path=PATH --  perl      
--with-perl=PATH --  perl     
--http-client-body-temp-path=PATH --  http               ,      ,   /client_body_temp
--http-proxy-temp-path=PATH --  http          ,      ,   /proxy_temp
--http-fastcgi-temp-path=PATH -  http fastcgi        ,      ,   /fastcgi_temp
--without-http --   HTTP  
--with-mail --   IMAP4/POP3/SMTP    
--with-mail_ssl_module --   ngx_mail_ssl_module
--with-cc=PATH --   C     
--with-cpp=PATH --   C      
--with-cc-opt=OPTIONS --   CFLAGSFreeBSD  PCRE ,      --with-cc-opt=”-I /usr/local/include”,      select()                ,    --with-cc-opt=”-D FD_SETSIZE=2048”  。
--with-ld-opt=OPTIONS --           ,  FreeBSD  PCRE ,      --with-ld-opt=”-L /usr/local/lib”。
--with-cpu-opt=CPU --      CPU: pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64
--without-pcre --   PCREHTTP rewrite   ,    ”location”          ,    PCRE--with-pcre=DIR --   PCRE--with-pcre-opt=OPTIONS --      PCRE--with-md5=DIR --   md5      。
--with-md5-opt=OPTIONS --      md5      。
--with-md5-asm --   md5   。
--with-sha1=DIR --   sha1      。
--with-sha1-opt=OPTIONS --      sha1      。
--with-sha1-asm --   sha1   。
--with-zlib=DIR --   zlib      。
--with-zlib-opt=OPTIONS --      zlib      。
--with-zlib-asm=CPU --     CPU  zlib       ,    : pentium, pentiumpro。
--with-openssl=DIR --   openssl      。
--with-openssl-opt=OPTIONS --      openssl      。
--with-debug --   debug  。
--add-module=PATH --      PATH

좋은 웹페이지 즐겨찾기