Ubuntu

Apache 虛擬主機指向錯誤的 DocumentRoot

  • May 25, 2019

我在執行 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)

這將有助於闡明可能配置錯誤的內容。謝謝!

引用自:https://unix.stackexchange.com/questions/106326