Nginx - 設定子網域無法正常運作

Nginx - 設定子網域無法正常運作

一開始,我創建了一個conf文件,當我想要訪問時它可以正常工作http://www.domain.com

server {
   listen 80;
   listen [::]:80;

   root /var/www/domain;
   index index.html

   server_name domain.com www.domain.com;
}

然後我決定為子網域建立另一個conf檔:

server {
   listen 80;
   listen [::]:80;

   root /var/www/subdomain.domain;
   index index.html

   server_name subdomain.domain.com;
}

現在的問題是,每當我想訪問http://www.domain.com或 時http://subdomain.domain.com,在這兩種情況下,結果都是我應該為子網域獲取的頁面。

新的conf檔案已正確加入到site-enabled資料夾中:

ln -s /etc/nginx/site-available/subdomain.domain.conf /etc/nginx/site-enabled/subdomain.domain.conf

我的 DNS 記錄如下所示:

domain.com. IN A <server_ip>
www.domain.com. IN A <server_ip>
subdomain.domain.com. IN A <server_ip>

答案1

您缺少指令;中的index,這會導致 nginx 解釋

index.html

server_name domain.com www.domain.com;

作為指令的內容index。因此,沒有使用 定義虛擬主機server_name,nginx 將使用子網域虛擬主機作為包羅萬象的虛擬主機。

相關內容