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

Nginx虛擬主機(jī)多server_name的順序問(wèn)題

 更新時(shí)間:2008年12月06日 21:15:03   作者:  
今天在配置Nginx + PHP + MediaWiki中,發(fā)現(xiàn)一個(gè)問(wèn)題:MediaWiki所在的Nginx虛擬主機(jī)綁定了多個(gè)域名,但是不管通過(guò)什么域名訪問(wèn)MediaWiki首頁(yè),都會(huì)被跳轉(zhuǎn)到其中的一個(gè)域名上。

Nginx配置文件中沒(méi)有相關(guān)的rewrite跳轉(zhuǎn)規(guī)則,那么就應(yīng)該是MediaWiki的PHP程序做的跳轉(zhuǎn),但是,遍歷了MediaWiki目錄下的所有文件以及查詢了MySQL數(shù)據(jù)庫(kù)中的每個(gè)表,都沒(méi)有發(fā)現(xiàn)記錄有這個(gè)域名。后來(lái),通過(guò)查看源代碼發(fā)現(xiàn)MediaWiki是根據(jù)$_SERVER['SERVER_NAME']做的跳轉(zhuǎn),順藤摸瓜,發(fā)現(xiàn)了下列問(wèn)題:

  在一個(gè)Nginx虛擬主機(jī)中,可以綁定多個(gè)server_name,例如:
  

  而server_name的先后順序的不同,對(duì)PHP程序中使用$_SERVER["SERVER_NAME"]或getenv('SERVER_NAME')獲取服務(wù)器域名是有影響的:
  

  

  $_SERVER["SERVER_NAME"]或getenv('SERVER_NAME')獲取的始終將是Nginx server_name配置中的第一個(gè)域名,這一點(diǎn)在程序開(kāi)發(fā)中需要注意。這第一個(gè)域名就相當(dāng)于Apache虛擬主機(jī)配置中的ServerName,后面的域名就相當(dāng)于Apache的ServerAlias。

相關(guān)文章

最新評(píng)論