欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx listen 監(jiān)聽端口的實現(xiàn)配置

 更新時間:2023年12月04日 15:03:36   作者:富士康質(zhì)檢員張全蛋  
本文將介紹Nginx的listen指令及其在配置文件中的應用,通過了解listen指令,我們可以知道Nginx如何監(jiān)聽端口,并配置相應的服務器塊來處理進入的請求

listen 指令

監(jiān)聽端口: listen address:port [default | default_server | [backlog=num | rcvbuf=size| sndbuf=size | accept_filter | deferred | bind | ipv6only=[on|off] | ssl]];

默認:listen 80

配置塊: server

含義

指定服務監(jiān)聽的地址,如果使用IP協(xié)議,則可以包括IP地址和端口,如果使用UNIX域套接字協(xié)議,則為文件路徑。

作用域

只能在server塊中設置,并起作用。

配置解析

default default_server :最終處理的服務器設置。

backlog : TCP 中 backlog 隊列的大小。(能夠承載多少tcp的連接,設置的越大,承載的tcp連接越多,反之)

rcvbuf :設置接收緩存的大小。

sndbuf :設置發(fā)送緩存的大小。

這會決定服務器的吞吐速度,如果設置發(fā)送緩存大小為8k,那么頁面小于8k就可以一次性發(fā)送。

如果大于8k就需要多次往外面發(fā)送。一般使用默認。

accept_filter :設置 accept 過濾器大小,僅對 FreeBSD 操作系統(tǒng)起作用。

deferred :三次握手后 worker 仍不處理,實際數(shù)據(jù)到達后 worker 再參與處理。(這樣worker進程不會對三次握手牽扯住,他有足夠的精力處理手頭的工作)

bind :綁定當前端口 - 地址對,如: 127.0.0.1:8000(只有多個IP地址和端口才涉及到綁定,一般都不需要綁定,因為服務器只有一個IP)

ssl :在監(jiān)聽的對口上建立連接必須基于 ssl 。(一般不會寫在listen的后面,一般ssl在其他的地方配置,配置了ssl那么該端口只提供ssl的服務,說白了就是https)

ssl需要編譯到ssl模塊,同時還需要提供ssl證書。

# 補充知識點:/etc/hosts域名解析文件配置
當本地瀏覽器訪問某個域名的時候,首先會從/etc/hosts文件中查找,找不到再去dns中去找
,所以你可以直接配置本地的域名

#vim /etc/hosts
127.0.0.1 www.baidu.com 

設置方法

對于IP協(xié)議來講,可以只配置端口,可以只配置IP,也可以IP和端口都配置。 

 示例:

  • listen 8000;   和*.8000一樣,表示將服務器所有支持的ip地址都綁定了端口,這樣所有的IP地址都可以提供服務。(監(jiān)聽本機所有IP的8000端口)
  • listen *:8000;      如果只有一塊網(wǎng)卡,那么只有一個IP,如果是虛擬樣還有虛擬網(wǎng)卡的IP,這樣實際上就會涉及到多個IP,*代表所有的IP。(監(jiān)聽本機所有IP的9000端口)
  • listen 127.0.0.1:8000;   這樣寫就是只去綁定127.0.0.1的IP(監(jiān)聽127.0.0.1的8000端口)
  • listen localhost:8000;  這個和listen 127.0.0.1:8000;  效果一樣(監(jiān)聽locahost的9000端口)
  • listen 127.0.0.1;  這里默認端口就是80(監(jiān)聽root權限用戶127.0.0.1的80端口,非root權限用戶不允許啟動nginx)
  • listen [::]:8000;  IPV6  監(jiān)聽IPv6的8000端口
  • listen [fe80::1];  這個只寫了IPV6的ip,沒有寫端口號
  • listen [:::a8c9:1234]:80;
  • listen 443 default_server ssl;  443端口,ssl協(xié)議
  • listen 127.0.0.1 default_server accept_filter=dataready backlog=1024;  綜合了上面所有的寫法

 如果沒有配置listen指定,對于root權限用戶監(jiān)聽80端口,對于非root用戶監(jiān)聽8000端口。

 示例

只配置端口80 

在使用listen的時候可以直接配置,直接去寫端口號,或者去寫其IP地址。

一般都是這種直接就一個80端口,意味著這臺主機上面有幾個IP,他就會去為這些IP的80端口提供服務。

下面的這些IP訪問80端口都可以提供服務

[root@jenkins ~]# ifconfig 
br-a07742cf33c8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.1.0.1  netmask 255.255.255.0  broadcast 10.1.0.255
        inet6 fe80::42:9bff:fe4a:a821  prefixlen 64  scopeid 0x20<link>

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        inet6 fe80::42:90ff:fee6:469b  prefixlen 64  scopeid 0x20<link>

eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.11.128  netmask 255.255.255.0  broadcast 192.168.11.255
        inet6 fe80::20c:29ff:fe00:9de2  prefixlen 64  scopeid 0x20<link>

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>

root表示web服務器能夠訪問的根,默認首頁是index.html或者index.htm。50x.html表示當服務器發(fā)生錯誤的時候會自動返回50x.html的頁面

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

[root@jenkins nginx]# cd html/
[root@jenkins html]# ls
50x.html  index.html
[root@jenkins html]# for ip in `ifconfig | grep -w inet | awk '{print $2}'`;do echo $ip**********;curl $ip;done 

10.1.0.1**********
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>

172.17.0.1**********
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>

192.168.11.128**********
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>

127.0.0.1**********
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>

可以看到這三個IP的端口都可以對外提供服務,也就是機器上面插了幾塊網(wǎng)卡,那么就有幾塊IP,如果配置的時候不去指定IP,那么這些網(wǎng)卡上的IP就都可以對外提供服務。

指定某個IP對外提供服務,其他IP不對外提供服務

注意,修改之后,需要重啟,重啟和reload是不一樣的。

[root@jenkins conf]# nginx -s quit
[root@jenkins conf]# nginx

[root@jenkins conf]# for ip in `ifconfig | grep -w inet | awk '{print $2}'`;do echo $ip**********;curl $ip;done 
10.1.0.1**********
curl: (7) Failed connect to 10.1.0.1:80; Connection refused
172.17.0.1**********
curl: (7) Failed connect to 172.17.0.1:80; Connection refused
192.168.11.128**********
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
127.0.0.1**********
curl: (7) Failed connect to 127.0.0.1:80; Connection refused

到此這篇關于Nginx listen 監(jiān)聽端口的實現(xiàn)配置的文章就介紹到這了,更多相關Nginx listen 監(jiān)聽端口內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • 關于Nginx跨域問題及解決方案(CORS)

    關于Nginx跨域問題及解決方案(CORS)

    文章主要介紹了跨域資源共享(CORS)機制及其在現(xiàn)代Web開發(fā)中的重要性,通過Nginx,可以簡單地解決跨域問題,適合新手學習和應用,文章詳細講解了CORS的基本概念、常見的跨域場景、Nginx如何解決CORS問題,以及如何配置Nginx來處理CORS請求
    2025-02-02
  • nginx緩存及錯誤頁面配置

    nginx緩存及錯誤頁面配置

    這篇文章主要介紹了nginx緩存及錯誤頁面配置的相關資料,需要的朋友可以參考下
    2017-01-01
  • 在Nginx中增加對OAuth協(xié)議的支持的教程

    在Nginx中增加對OAuth協(xié)議的支持的教程

    這篇文章主要介紹了在Nginx中增加對OAuth協(xié)議的支持的教程,OAuth協(xié)議如今廣泛用于社交網(wǎng)絡的API中,需要的朋友可以參考下
    2015-06-06
  • 為Nginx添加mp4流媒體支持

    為Nginx添加mp4流媒體支持

    這篇文章主要介紹了為Nginx添加mp4流媒體支持的的相關資料,需要的朋友可以參考下
    2014-12-12
  • 為Nginx添加SPDY功能

    為Nginx添加SPDY功能

    我也開始嘗試著給自己的論壇加上SPDY協(xié)議,WEB服務器本人選擇的是nginx,在過去,Nginx并沒有內(nèi)置SPDY協(xié)議,需要打開的話還要下載開發(fā)版然后手動編譯,很不方便
    2014-12-12
  • nginx利用referer指令實現(xiàn)防盜鏈配置

    nginx利用referer指令實現(xiàn)防盜鏈配置

    nginx模塊ngx_http_referer_module通常用于阻擋來源非法的域名請求,我們應該牢記。下面這篇文章主要介紹了nginx利用referer指令實現(xiàn)防盜鏈配置的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-03-03
  • keepalived+lvs 對nginx做負載均衡和高可用的操作方法

    keepalived+lvs 對nginx做負載均衡和高可用的操作方法

    這篇文章主要介紹了keepalived+lvs 對nginx做負載均衡和高可用的操作方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-12-12
  • Nginx限制帶寬配置示例

    Nginx限制帶寬配置示例

    這篇文章主要介紹了Nginx限制帶寬配置示例,本文網(wǎng)羅了3個方法,希望可以幫到大家,需要的朋友可以參考下
    2014-09-09
  • 分享nginx+php-fpm實現(xiàn)大文件下載排坑的過程

    分享nginx+php-fpm實現(xiàn)大文件下載排坑的過程

    這篇文章主要介紹了nginx+php-fpm實現(xiàn)大文件下載排坑的過程,文中通過代碼實例相結合的形式給大家介紹的非常詳細,具有一定得參考借鑒價值,需要的朋友參考下吧
    2018-08-08
  • nginx rewrite參數(shù)解析

    nginx rewrite參數(shù)解析

    這篇文章主要介紹了nginx rewrite參數(shù)解析的相關資料,需要的朋友可以參考下
    2022-11-11

最新評論