Debian 8 (jessie) 컴 파일 설치 NGINX 1.15

실험 환경
OS: debian_version_8.11 64 
CPU: Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz
Mem: 8GB
Kernel: 3.16.0-10-amd64
Nginx: nginx-1.15.12

간략하게 설명 하 다.
1、          ,       
2、        /apps/apps_src/
3、           /apps/xxxxx

컴 파일 설치 과정 1, 설치 관련 의존 패키지
apt update && apt -y install gcc make zlib1g* libssl-dev libpcre+*

2. 압축 풀기 다운로드 팩
tar zxvf nginx-1.15.12 && cd nginx-1.15.12

3. nginx 를 실행 하 는 사용 자 를 만 듭 니 다.
groupadd -r -g 200 nginx
useradd -r -g 200 -u 200 -s /bin/false -d /dev/null -M nginx

4. 컴 파일 가능 한 옵션 보기
./configure --help

5. 설정 옵션
./configure \
--prefix=/apps/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/apps/nginx/logs/error.log \
--http-log-path=/apps/nginx/logs/access.log \
--pid-path=/apps/nginx/run/nginx.pid \
--lock-path=/apps/nginx/lock/nginx.lock \
--http-client-body-temp-path=/apps/nginx/tmp/client \
--http-proxy-temp-path=/apps/nginx/tmp/proxy \
--http-fastcgi-temp-path=/apps/nginx/tmp/fastcgi \
--user=nginx --group=nginx \
--with-poll_module --with-threads \
--with-file-aio --with-pcre \
--with-http_realip_module \
--with-http_ssl_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_gunzip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module 2> ../nginx-1.15.12-configure.err

configure 명령 은 시스템 환경 을 검사 하고 nginx 설정 을 설정 하 는 역할 을 합 니 다. 마지막 에 성공 하면 Makefile 파일 을 생 성 합 니 다.
6. 컴 파일
make -j 4 2> ../nginx-1.15.12-make.err

make 는 새로 생 성 된 Makefile 파일 의 명령 을 컴퓨터 인식 바 이 너 리 파일 로 컴 파일 합 니 다.
7. 설치
make -j 4 install 2> ../nginx-1.15.12-install.err

8. 전역 변수 설정
echo "export PATH=$PATH:/apps/nginx/sbin" >> /etc/profile.d/nginx.sh 
source /etc/profile.d/nginx.sh

9. 설치 디 렉 터 리 검사 디 렉 터 리 에 들 어가 디 렉 터 리 생 성 이 부족 합 니 다.
mkdir -v /apps/nginx/{lock,tmp}

10. nginx 프로필 / etc / nginx / nginx. conf 수정
worker_processes  4;                #nginx   ,       CPU    

pid /apps/nginx/run/nginx.pid;

use epoll;                   #    IO      ,   nginx  。    linux2.6    
worker_connections  1024;    #    worker_processes          ,        

server_tokens off;            #    header   (404 )       
sendfile       on;            #        
tcp_nopush     on;            #          
tcp_nodelay    on;            #                  ,    I/O  

gzip  on;                        #      
gzip_min_length  1k;            #           ,    1k,    1k       
gzip_types  text/plain application/x-javascript text/css application/xml;        #  “text/html”        

#             ,      ,      
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;

listen       192.168.1.146:80;      #          (    )
server_name  host12.i.super.org;        #  name,              (    )

location / {
    root   html;
    index  index.php index.html index.htm;      #  index.php
}


location ~ \.php$ {
root           html;                    #      
fastcgi_pass   127.0.0.1:9000;            #  fastcgi          IP
fastcgi_index  index.php;                #    
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;        #       .php    ,      $document_root(     )  .php  
include        fastcgi_params;
}

#         nginx     
location /nginx_status {
    stub_status on;
    access_log off;
}

11. nginx 설정 파일 에 오류 가 있 는 지 확인 합 니 다.
nginx -t    #      
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

12. nginx 서 비 스 를 시작 / 닫 기 / 다시 불 러 옵 니 다.
/apps/nginx/sbin/nginx
/apps/nginx/sbin/nginx -s stop      #  
/apps/nginx/sbin/nginx -s reload    #    
/apps/nginx/sbin/nginx -h           #    

13. nginx 서비스 스 크 립 트 를 작성 하여 systemd 서비스 / etc / systemd / system / nginx. service 에 가입 합 니 다.
[Unit]
Description=A high performance web server and a reverse proxy server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/apps/nginx/run/nginx.pid
ExecStart=/apps/nginx/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/apps/nginx/sbin/nginx -s reload
ExecStop=/apps/nginx/sbin/nginx -s stop
TimeoutStopSec=5

[Install]
WantedBy=multi-user.target

#  Esc        ,   :wq      nginx.service  。

chmod 754 /etc/systemd/system/nginx.service
systemctl start nginx && systemctl enable nginx

좋은 웹페이지 즐겨찾기