如何設定 /etc/hosts 檔案以指向 apache Web 伺服器?

如何設定 /etc/hosts 檔案以指向 apache Web 伺服器?

我已經安裝了 apache Web 伺服器,我需要將 127.1.1.1 和別名 (www.someaddress.lan) 指向本機 apache。正確的做法是什麼?如何將 someaddress.lan 指向預設 apache 頁面並將 www.someaddress.lan 指向 /var/www/wordpress/?

答案1

對於您的主機檔案:

127.1.1.1     someaddress.lan www.someaddress.lan

順便問一下,你不是說127.0.0.1嗎?這是本機的環回 IP 位址。如果是這樣,請使用以下命令:

127.0.0.1     someaddress.lan www.someaddress.lan localhost.localdomain localhost

然後你需要編輯你的 apache 伺服器設定檔。通常在 /etc/httpd/conf/httpd.conf 中,您可以將子網域(虛擬主機)與包含 apache 伺服器所服務的內容的目錄關聯起來。

基於 Apache 名稱的虛擬主機

NameVirtualHost *:80

<VirtualHost *:80>
ServerName www.someaddress.lan
ServerAlias www.someaddress.lan
DocumentRoot /var/www/wordpress
</VirtualHost>

<VirtualHost *:80>
ServerName someaddress.lan
ServerAlias someaddress.lan
DocumentRoot /var/www/html
</VirtualHost>

答案2

如果您不想在電腦中安裝任何類型的 DNS 伺服器,那麼您可以將一個項目放入/etc/hosts檔案中。

 127.1.1.1    www.someaddress.lan    someaddress.lan

其實凡是主機在透過聯絡其DNS伺服器解析網域之前,都會先檢查自己的/etc/hosts檔案。如果它在該檔案中找到該網域條目,則不會聯絡其 DNS 伺服器。

編輯:您必須為每個新增條目/etc/apache2/sites-enabled/000-default

<VirtualHost *>
   ServerName    someaddress.lan
   DocumentRoot  /var/www/html
</VirtualHost>

<VirtualHost *>
   ServerName    www.someaddress.lan
   DocumentRoot  /var/www/wordpress
</VirtualHost>

筆記:apache2透過以下命令更改上述設定檔後,不要忘記重新啟動伺服器:

$ sudo /etc/init.d/apache2 restart

相關內容