国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

nginx 虛擬主機(jī)原理和配置

2023-12-28 15:26:35 6299

nginx 虛擬主機(jī)原理和配置

虛擬主機(jī)與域名解析

虛擬主機(jī)使用特殊的軟硬件技術(shù),把一臺(tái)運(yùn)行在因特網(wǎng)上的服務(wù)器主機(jī)分成一臺(tái)臺(tái)“虛擬”的主機(jī),每一臺(tái)虛擬主機(jī)都具有獨(dú)立的域名,具

有完整的 Internet 服務(wù)器(WWW、FTP、Email 等)功能,虛擬主機(jī)之間完全獨(dú)立,并可由用戶自行管理,在外界看來,每一臺(tái)虛擬主機(jī)

和一臺(tái)獨(dú)立的主機(jī)完全一樣。

域名解析就是域名到 IP 地址的轉(zhuǎn)換過程,IP 地址是網(wǎng)路上標(biāo)識(shí)站點(diǎn)的數(shù)字地址,為了簡(jiǎn)單好記,采用域名來代替 ip 地址標(biāo)識(shí)站點(diǎn)地址,。

域名的解析工作由 DNS 服務(wù)器完成。

虛擬主機(jī)原理

虛擬主機(jī)是為了在同一臺(tái)物理機(jī)器上運(yùn)行多個(gè)不同的網(wǎng)站,提高資源利用率引入的技術(shù)。

一般的 web 服務(wù)器一個(gè) ip 地址的 80 端口只能正確對(duì)應(yīng)一個(gè)網(wǎng)站。web 服務(wù)器在不使用多個(gè) ip 地址和端口的情況下,如果需要支持多個(gè)

相對(duì)獨(dú)立的網(wǎng)站就需要一種機(jī)制來分辨同一個(gè) ip 地址上的不同網(wǎng)站的請(qǐng)求,這就出現(xiàn)了主機(jī)頭綁定的方法。簡(jiǎn)單的說就是,將不同的網(wǎng)

站空間對(duì)應(yīng)不同的域名,以連接請(qǐng)求中的域名字段來分發(fā)和應(yīng)答正確的對(duì)應(yīng)空間的文件執(zhí)行結(jié)果。舉個(gè)例子來說,一臺(tái)服務(wù)器 ip 地址為

10.0.0.12,有兩個(gè)域名和對(duì)應(yīng)的空間在這臺(tái)服務(wù)器上,使用的都是 10.0.0.12 的 80 端口來提供服務(wù)。如果只是簡(jiǎn)單的將兩個(gè)域名 A 和 B

的域名記錄解析到這個(gè) ip 地址,那么 web 服務(wù)器在收到任何請(qǐng)求時(shí)反饋的都會(huì)是同一個(gè)網(wǎng)站的信息,這顯然達(dá)不到要求。接下來我們使

用主機(jī)頭綁定域名 A 和 B 到他們對(duì)應(yīng)的空間文件夾 C 和 D。當(dāng)含有域名 A 的 web 請(qǐng)求信息到達(dá) 10.0.0.12 時(shí),web 服務(wù)器將執(zhí)行它對(duì)應(yīng)

的空間 C 中的首頁(yè)文件,并返回給客戶端,含有域名 B 的 web 請(qǐng)求信息同理,web 服務(wù)器將執(zhí)行它對(duì)應(yīng)的空間 D 中的首頁(yè)文件,并返回

給客戶端,所以在使用主機(jī)頭綁定功能后就不能使用 ip 地址訪問其上的任何網(wǎng)站了,因?yàn)檎?qǐng)求信息中不存在域名信息,所以會(huì)出錯(cuò)。

虛擬主機(jī)的配置

  • 方式一:監(jiān)聽不同域名

配置nginx.conf

# 在http模塊下添加多個(gè)server,監(jiān)聽不同的域名

...

http {

  ...

  # 虛擬主機(jī)test80.xlyw.top

  server {

      #監(jiān)聽端口

        listen       80;

        #域名,可以有多個(gè),用空格隔開

        server_name  test80.xlyw.top;

 

  #配置根目錄以及默認(rèn)頁(yè)面

        location / {

            root   /www/test80;

            index  index.html index.htm;

        }

 

  #出錯(cuò)頁(yè)面配置

        error_page   500 502 503 504  /50x.html;

        #/50x.html文件所在位置

        location = /50x.html {

            root   html;

        }

  }

  # 虛擬主機(jī)test81.xlyw.top

  server {

    #監(jiān)聽端口

        listen       80;

        #域名,可以有多個(gè),用空格隔開

        server_name  test81.xlyw.top;

 

  #配置根目錄以及默認(rèn)頁(yè)面

        location / {

            root   /www/test81;

            index  index.html index.htm;

        }

 

  #出錯(cuò)頁(yè)面配置

        error_page   500 502 503 504  /50x.html;

        #/50x.html文件所在位置

        location = /50x.html {

            root   html;

        }

 

}

  • 方式二:監(jiān)聽不同端口

http {

        ...

 #虛擬主機(jī)的配置

    server {

    #監(jiān)聽端口

        listen       80;

        #域名,可以有多個(gè),用空格隔開

        server_name  localhost;

 

        #配置根目錄以及默認(rèn)頁(yè)面

        location / {

            root   /www/test80;

            index  index.html index.htm;

        }

 

        #出錯(cuò)頁(yè)面配置

        error_page   500 502 503 504  /50x.html;

        #/50x.html文件所在位置

        location = /50x.html {

            root   html;

        }

       

    }

   

   

    #虛擬主機(jī)的配置

    server {

    #監(jiān)聽端口

        listen       81;

        #域名,可以有多個(gè),用空格隔開

        server_name  localhost;

 

        #配置根目錄以及默認(rèn)頁(yè)面

        location / {

            root   /www/test81;

            index  index.html index.htm;

        }

 

        #出錯(cuò)頁(yè)面配置

        error_page   500 502 503 504  /50x.html;

        #/50x.html文件所在位置

        location = /50x.html {

            root   html;

        }

       

    }

 

}

 

 

 


提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: