CentOS6 Apache - 虛擬主機

CentOS6 Apache - 虛擬主機

我試圖在我的 CentOS6 伺服器上的 apache 中設定一個虛擬主機來處理子網域的查詢。

假設我有網域名稱“example.com”。現在,我想建立子網域 test.example.com,它提供除主網域之外的另一個 html 頁面。

我已經搜尋了一些說明來做到這一點,特別是在 apache.org 上,有很多,但沒有人工作。

問題是:每當我在瀏覽器中造訪 test.example.com 時,儘管 DocumentRoot 指向另一個目錄,但我都會看到 example.com 提供的主頁。

我什至嘗試了一個最小的 httpd 配置文件,只包含以下程式碼,但沒有成功。

Listen 80
<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /www/main
</VirtualHost>

<VirtualHost *:80>
    ServerName test.example.com
    DocumentRoot /www/test
</VirtualHost>

您知道問題出在哪裡嗎?

答案1

更改順序,test.example.com VirtualHost在前面(之前)進行example.com VirtualHost,然後重新啟動httpd服務。

Listen 80
NameVirtualHost *:80
<VirtualHost _default_:80>
</VirtualHost>
<VirtualHost _default_:80>
 ServerName test.example.com
 DocumentRoot /www/test
</VirtualHost>
<VirtualHost _default_:80>
 ServerName example.com
 DocumentRoot /www/main
</VirtualHost>

相關內容