Apache-2.4
Apache2.4 Raspbian 無法使用 ServerName 訪問 VirtualHosts,只有埠號
在本地使用命名主機並不重要,因為我需要的主要是外部網路訪問(我已經設置了埠轉發),但我仍然想知道為什麼我可以’ t 使用我定義的 ServerName 訪問 VirtualHost。
我正在研究 Raspberry Pi(基於 Debian 的 Raspbian),但我在 VMWare VM 上的 Ubuntu 18 上遇到了同樣的問題,無論是在眾多作業系統還是 Apache 安裝上。
在我的 Apache.conf 中,我添加了:
ServerName localhost NameVirtualHost *:8010
在我的 virtualhost.conf 我有:
<VirtualHost *:8010> ServerAdmin admin@example.com DocumentRoot /var/www/html/MySite/public ServerName www.think.com ServerAlias www.think.com DirectoryIndex index.php ErrorLog /var/log/apache2/concrete5-error_log CustomLog /var/log/apache2/concrete5-access_log common </VirtualHost>
(我嘗試過使用和不使用 ServerAlias)
在我的 ports.conf 中,我添加了:
Listen 8010
最後在我的主機中,我有:
127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters 127.0.1.1 raspberrypi 127.0.0.3 www.think.com 127.0.0.2 gci.example.com
我可以通過http://localhost:8010/毫無問題地訪問我的站點,但是無論我做什麼,http://www.think.com 都會始終重定向到 Apache2 預設頁面。即使我完全按照 Ubuntu 教程進行操作,我也無法讓命名站點正常工作(https://ubuntu.com/tutorials/install-and-configure-apache#1-overview)。
我還禁用了預設站點,嘗試打開預設站點,兩者的結果相同。
任何幫助表示讚賞!
編輯:更新名稱以使問題更清晰
如果不是預設的 80,則需要指定埠號。
http://www.think.com:8010/
另一種方法是讓 Apache 在埠 80 上偵聽。但是,根據您的描述,Apache 已經在偵聽該埠。為什麼不將您的虛擬主機添加到該 Apache,使用
<VirtualHost *:80>
請參閱基於名稱的虛擬主機