CentOS7.5中編譯安裝nginx-1.12.2


1 說明

本文檔以吉林考試項目爲例,採用編譯方式來安裝部署nginxjavascript

2 目錄規劃

nginx版本css

nginx源碼包存放錄html

nginx安裝目錄java

nginx存放代碼目錄nginx

nginx日誌目錄vim

nginx-1.12.2app

nginx-1.12.2tcp

/usr/local/nginxide

/home/yunwei/nginx-datapost

/home/yunwei/nginx-logs

3 下載nginx源碼包

建立nginx源碼包存放目錄

mkdir /usr/local/src/nginx

下載nginx源碼包到指定目錄

wget http://nginx.org/download/nginx-1.12.2.tar.gz -P /usr/local/src/nginx/

解壓nginx源碼包

tar xf /usr/local/src/nginx/nginx-1.12.2.tar.gz  -C /usr/local/src/nginx/

4 編譯安裝nginx

安裝依賴包

yum -y install pcre-devel openssl-devel

建立nginx用戶

useradd -s /sbin/nologin -M nginx

建立nginx安裝目錄

mkdir /usr/local/nginx

cd /usr/local/src/nginx/nginx-1.12.2/

./configure --prefix=/usr/local/nginx/ --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module

make && make install

ln -s /usr/local/nginx/sbin/nginx /sbin/nginx

5 建立存放代碼和日誌目錄

mkdir /home/yunwei/nginx-data/jl_exam/jl_exam_poral/ROOT -p

mkdir /home/yunwei/nginx-data/jl_exam/jl_exam_manage_view/ROOT/ -p

mkdir /home/yunwei/nginx-logs/jl_exam/ -p

chmod 755 /home/yunwei/

chown -R nginx.nginx /home/yunwei/nginx-*

6 編輯配置文件

備份配置文件

cp /usr/local/nginx/conf/nginx.conf{,.ori}

建立虛擬主機配置文件存放目錄

mkdir /usr/local/nginx/conf/extra/jl_exam

6.1 編輯nginx.conf主配置文件

cat >/usr/local/nginx/conf/nginx.conf <<EOF

worker_processes  1;

worker_rlimit_nofile 2048;

events {

    worker_connections  4096;

}

http {

    include       mime.types;

    default_type  application/octet-stream;

    sendfile        on;

    tcp_nopush on;

    keepalive_timeout  65;

    fastcgi_intercept_errors on;

    send_timeout 15s;

server_tokens off;

client_max_body_size 50m;    #客戶端可上傳的最大報文(附件)大小爲50MB,默認爲1MB

    gzip on;

    gzip_min_length 1k;

    gzip_buffers 4 16k;

    gzip_http_version 1.1;

    gzip_comp_level 2;

    gzip_types text/css text/xml application/javascripts;

gzip_vary on;

client_max_body_size 50m;                                                                      

client_header_timeout 120s;                                                                     

client_body_timeout 120s;                                                                       

client_body_buffer_size 256k;

    log_format  main  '\$remote_addr - \$remote_user [\$time_local] "\$request" '

                      '\$status \$body_bytes_sent "\$http_referer" '

                      '"\$http_user_agent" "\$http_x_forwarded_for"';

    include extra/jl_exam/jl_exam_poral.conf;

    include extra/jl_exam/jl_exam_manage_view.conf;

}

EOF

6.2 virtual server配置

vim /usr/local/nginx/conf/extra/jl_exam/jl_exam_manage_view.conf

server {                                                                                     

        listen       8081;                                                                       

        server_name  10.0.0.14;

        access_log  /home/yunwei/nginx-logs/jl_exam/jl_exam_manage_view_access.log main;

        error_log  /home/yunwei/nginx-logs/jl_exam/jl_exam_manage_view_error.log;           

        location / {                                                                              

            root   /home/yunwei/nginx-data/jl_exam/jl_exam_manage_view/ROOT;                                                           

        }                                                                                        

        error_page   500 502 503 504  /50x.html;                                                 

        location = /50x.html {                                                                   

            root   html;                                                                          

        }                                                                                        

}

vim /usr/local/nginx/conf/extra/jl_exam/jl_exam_poral.conf

server {

       listen       80;

       server_name  10.0.0.14;

           access_log  /home/yunwei/nginx-logs/jl_exam/jl_exam_poral_access.log main;

       error_log  /home/yunwei/nginx-logs/jl_exam/jl_exam_poral_error.log;

       location / {

           root   /home/yunwei/nginx-data/jl_exam/jl_exam_poral/ROOT;

           index  index.html index.htm;

       }  

       error_page   500 502 503 504  /50x.html;

       location = /50x.html {

           root   html;

       }  

}

7 啓動nginx服務

將代碼放入相應的站點目錄裏

nginx    #啓動nginx

echo "/usr/local/nginx/sbin/nginx" >>/etc/rc.local    #添加到開機自啓動

8 日誌切割配置

利用系統自帶的logrotate進行切割nginx日誌文件

建立nginx_jl_exam文件

cat >/etc/logrotate.d/nginx_jl_exam <<EOF

/home/yunwei/nginx-logs/jl_exam/*.log{

daily

rotate 10

create

dateext

notifempty

postrotate

        [ -f /usr/local/nginx/logs/nginx.pid ] && kill -USR1 \`cat /usr/local/nginx/logs/nginx.pid\`

endscript

}

EOF

強制執行一次,切割日誌,之後天天會定時切割日誌

logrotate -f /etc/logrotate.d/nginx_jl_exam

相關文章
相關標籤/搜索