Ubuntu
Apache 虛擬主機指向錯誤的 DocumentRoot
我在執行 Ubuntu 12.04.3 的 Digital Ocean 上使用虛擬主機執行 VPS。我可以在這裡按照本教程進行設置:https ://www.digitalocean.com/community/articles/how-to-set-up-apache-virtual-hosts-on-ubuntu-12-04-lts
然而,幾天后,我導航到我的主域 (noelforte.com) 以檢查一切是否執行順利,但沒有看到我臨時設置的登錄頁面,而是看到了一個目錄列表。
奇怪的是,我使用 VHosts 配置的子域仍然指向正確的目錄,但是我的主域恢復為指向
/var/www
.刪除其中的配置文件
/etc/apache2/sites-available
並再次設置所有內容會產生相同的結果:任何子域都將指向正確的位置,但根 TLD 仍然卡在指向/var/www
.什麼可能導致這種情況,為什麼它最初可以正常工作?
解決了!執行
sudo apache2ctl -S
返回以下內容:VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:80 is a NameVirtualHost default server noelforte.com (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost noelforte.com (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost media.noelforte.com (/etc/apache2/sites-enabled/media.noelforte.com:1)
我決定禁用所有站點,包括預設站點,只啟動我需要的站點。這解決了我的問題。
如果有人可以解釋為什麼
noelforte.com
執行如此default-000
處所示:port 80 namevhost noelforte.com (/etc/apache2/sites-enabled/000-default:1)
這將有助於闡明可能配置錯誤的內容。謝謝!