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
orhttp://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>
您缺少指令
;
中的index
,這會導致 nginx 解釋index.html server_name domain.com www.domain.com;
作為
index
指令的內容。因此沒有用 a 定義的虛擬主機server_name
,nginx 將使用子域虛擬主機作為包羅萬象的虛擬主機。