Apache-2.2

如何讓我的 Apache 虛擬主機正常工作?

  • August 22, 2016

我正在嘗試為本地開發設置虛擬主機,但似乎無法正常工作。

我的 httpd.conf 中有這個:

NameVirtualHost *

<VirtualHost *>
ServerName localhost
DocumentRoot C:/Users/Elliot/dev/UniServer/www
</VirtualHost>

<VirtualHost *>
ServerName drupal.dev
DocumentRoot C:/Users/Elliot/dev/UniServer/www/drupal.dev/httpdocs
</VirtualHost>

這在 C:\Windows\System32\drivers\etc\hosts 中:

127.0.0.1       localhost
127.0.0.1       drupal.dev

http://localhost解決好,http://drupal.dev/沒有。

歡迎任何想法…


編輯:我很確定我的主機文件是根本問題,並且任何編輯都被忽略了。

奇怪的是,我可以在沒有提升權限的情況下編輯、保存和刪除它,這在 Windows >= Vista 上不應該是這種情況。

正在處理“什麼會導致 DNS 查找忽略主機文件條目?”、“HOSTS 文件被忽略”和“Windows XP 中的主機文件問題(作為新使用者,我無法發布連結)。


編輯:在我的情況下,停止 DNS 客戶端服務解決了這個問題….


編輯:……但只是非常簡短。

對 drupal.dev 執行 ping 操作並確保其解析到您的機器。此外,嘗試將 documentRoot 設置為與上述相同(C:/Users/Elliot/dev/UniServer/www/),以防萬一這是權限問題。

看這裡的例子:

http://www.cyberciti.biz/faq/apache-name-based-virtualhost-example/

設置 NameVirtualHost 的 IP 地址,然後將每個 VirtualHost 的 * 替換為限定名稱(第一個為 localhost,第二個為 drupal.dev)。

引用自:https://serverfault.com/questions/136070