Nginx安裝后常用功能如何配置

1.主配置文件與虛擬主機(jī)分離

如果虛擬主機(jī)很多的話,進(jìn)行分離看起來會(huì)更方便,還可以按功能、業(yè)務(wù)進(jìn)行劃分,下面以兩個(gè)虛擬主機(jī)為例。

完整的除去空行和注釋后的配置文件:

[root@nginx-01?conf]#?egrep?-v?"#|^$"?nginx.conf.bak? worker_processes??1; events?{ ????worker_connections??1024; } http?{ ????include???????mime.types; ????default_type??application/octet-stream; ????sendfile????????on; ????keepalive_timeout??65; ????server?{ ????????listen???????80; ????????server_name??localhost; ????????location?/?{ ????????????root???html; ????????????index??index.html?index.htm; ????????} ????????Error_page???500?502?503?504??/50x.html; ????????location?=?/50x.html?{ ????????????root???html; ????????} ????} }

創(chuàng)建/app/nginx/conf目錄下虛擬主機(jī)配置目錄

mkdir?extra

利用server模塊創(chuàng)建www和bbs兩個(gè)虛擬站點(diǎn)

[root@nginx-01?conf]#?cat?-n?nginx.conf [root@nginx-01?conf]#?sed?-n?'10,20p'?nginx.conf ????server?{ ????????listen???????80; ????????server_name??localhost; ????????location?/?{ ????????????root???html; ????????????index??index.html?index.htm; ????????} ????????error_page???500?502?503?504??/50x.html; ????????location?=?/50x.html?{ ????????????root???html; ????????}

www站點(diǎn)

[root@nginx-01?conf]#?cat?extra/www.conf? ????server?{ ????????listen???????80; ????????server_name??www.yygg.com; ????????location?/?{ ????????????root???html/www; ????????????index??index.html?index.htm; ????????} ????????error_page???500?502?503?504??/50x.html; ????????location?=?/50x.html?{ ????????????root???html; ????????} ????}

bbs站點(diǎn)

[root@nginx-01?conf]#?cat?extra/bbs.conf? ????server?{ ????????listen???????80; ????????server_name??bbs.yygg.com; ????????location?/?{ ????????????root???html/bbs; ????????????index??index.html?index.htm; ????????} ????????error_page???500?502?503?504??/50x.html; ????????location?=?/50x.html?{ ????????????root???html/bbs; ????????} ????}

主配置文件配置(nginx.conf)

worker_processes??1; events?{ ????worker_connections??1024; } http?{ ????include???????mime.types; ????default_type??application/octet-stream; ????sendfile????????on; ????keepalive_timeout??65; include?extra/www.conf; include?extra/bbs.conf; }

檢查配置

[root@nginx-01?conf]#?/app/nginx/sbin/nginx?-t nginx:?the?configuration?file?/app/nginx-1.18.0//conf/nginx.conf?syntax?is?ok nginx:?configuration?file?/app/nginx-1.18.0//conf/nginx.conf?test?is?successful

創(chuàng)建站點(diǎn)目錄

[root@nginx-01?conf]#?mkdir?/app/nginx/html/{www,bbs} [root@nginx-01?conf]#?echo?"http://www.yygg.com"?>>/app/nginx/html/www/index.html [root@nginx-01?conf]#?echo?"http://bbs.yygg.com"?>>/app/nginx/html/bbs/index.html [root@nginx-01?conf]#?echo?"192.168.1.5?www.yygg.com?bbs.yygg.com"?>>/etc/hosts

啟動(dòng)服務(wù)并測(cè)試

[root@nginx-01?conf]#?/app/nginx/sbin/nginx [root@nginx-01?conf]#?curl?www.yygg.com http://www.yygg.com [root@nginx-01?conf]#?curl?bbs.yygg.com http://bbs.yygg.com

2.虛擬主機(jī)別名設(shè)置

以www站點(diǎn)為例,設(shè)置別名
所謂別名就是除了主域名外額外設(shè)置一個(gè)或多個(gè)域名

為www.yygg.com設(shè)置別名yygg.com。

[root@nginx-01?conf]#?cat?extra/www.conf? ????server?{ ????????listen???????80; ????????server_name??www.yygg.com?yygg.com; ????????location?/?{ ????????????root???html/www; ????????????index??index.html?index.htm; ????????} ????????error_page???500?502?503?504??/50x.html; ????????location?=?/50x.html?{ ????????????root???html/www; ????????} ????}

重啟nginx測(cè)試

[root@nginx-01?conf]#?/app/nginx/sbin/nginx?-s?reload [root@nginx-01?conf]#?cat?/etc/hosts 192.168.1.5?www.yygg.com?bbs.yygg.com?yygg.com [root@nginx-01?conf]#?curl?yygg.com http://www.yygg.com

3.Nginx status狀態(tài)信息配置

狀態(tài)信息記錄使用的是`ngx_http_stub_status_module`模塊實(shí)現(xiàn)

輸入/app/nginx/sbin/nginx -V檢查編譯是否有上述模塊:

nginx?version:?nginx/1.18.0 built?by?gcc?4.8.5?20150623?(Red?Hat?4.8.5-16)?(GCC)? built?with?OpenSSL?1.0.2k-fips??26?Jan?2017 TLS?SNI?support?enabled configure?arguments:?--user=nginx?--group=nginx?--prefix=/app/nginx-1.18.0/?--with-http_stub_status_module?--with-http_ssl_module

創(chuàng)建一個(gè)status的虛擬主機(jī),方式參考標(biāo)題1,status.conf配置文件如下:

????server?{ ????????listen???????80; ????????server_name??status.yygg.com; ????????location?/?{ ????????????stub_status?on; ????????????access_log?off; ????????} ????}

主配置文件nginx.conf追加status虛擬主機(jī)配置

sed?-i?'11?i?include?extra/status.conf;'?nginx.conf

檢查語(yǔ)法并重啟nginx

/app/nginx/sbin/nginx?-t /app/nginx/sbin/nginx?-s?reload

配置hosts解析

192.168.1.5 status.yygg.com

訪問status.yygg.com查看

[root@nginx-01?conf]#?curl?status.yygg.com Active?connections:?1? server?accepts?handled?requests ?4?4?4? Reading:?0?Writing:?1?Waiting:?0

顯示結(jié)果解析:

Active connections: 1 ?##正處理的連接數(shù)為1server ?##共處理了4次連接accepts ?##共創(chuàng)建了4次握手handled requests ?##共處理了4次請(qǐng)求Reading ?##讀取到客戶端的Header信息數(shù)Writing ?##返回給客戶端的Header信息數(shù)Waiting ?##NGinx已經(jīng)處理完正在等候下一次請(qǐng)求的指令的駐留連數(shù)

4.增加錯(cuò)誤日志

error_log語(yǔ)法:

error_log?? ?file?? ?level;

關(guān)鍵字不變,file是日志存放位置,level是錯(cuò)誤日志級(jí)別

通常只用warn|error|crit三個(gè)級(jí)別

配置錯(cuò)誤日志配置,在nging.conf文件中worker_processes 1;下添加

error_loglogs/error_log;

沒錯(cuò),就這一行!

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊6 分享