Apache-2.2
虛擬主機是否應該始終使用裸域作為 ServerName?
為 設置虛擬主機
example.com
並希望www.example.com
用作我的首選域時,使用以下標準做法是否:<VirtualHost *:80> ServerName example.com ServerAlias www.example.com # ... </VirtualHost>
…其中我的首選域是別名?
如果我要切換
ServerName
and的值有關係ServerAlias
嗎?據我所知,它們是可以互換的(您可以指定多個伺服器別名除外)。
據我所知,切換 和 的值
ServerName
通常ServerAlias
不會影響您網站的執行方式。如手冊 中所述,僅當
UseCanonicalName
設置為非預設值時,您將看到在創建自引用重定向 URL 時使用 ServerName 的值(而不是用於訪問您的站點的任何 URL)。例如,如果使用者鍵入 ServerAlias 主機名和作為目錄的 URL(例如
http://www.example.com/splat
,沒有尾部斜杠),您將看到自引用重定向 URL,那麼 Apache httpd 會將它們重定向到http://example.com/splat/
.否則,您將只能
apachectl -S
在錯誤消息的輸出和錯誤消息中看到 ServerName 指令的值,因為友好錯誤消息的標準模板include/bottom.html
包括 用於自定義它們的 ServerName :標題:404 未找到
未找到
在此伺服器上找不到請求的 URL /some/page。
Apache/2.2.15 (CentOS) 伺服器在example.com埠 80
有一些有效的技術參數可供使用
www.example.com
,您可能希望這樣做:<VirtualHost *:80> ServerName example.com Redirect permanent / www.example.com </VirtualHost> <VirtualHost *:80> ServerName www.example.com ServerAlias www.example.org www.example.net # ... </VirtualHost>