Apache-2.2
沒有 DNS 的基於名稱的 Apache 虛擬伺服器
我在本地 Windows 7 x64 機器上安裝了 Apache Web 伺服器。它沒有全域 DNS 名稱。
在預設分發中,它在 Apache/conf/extra/httpd-vhosts.conf 文件中配置了虛擬主機。
它有一個指令
NameVirtualHost *:80
和多個指令
<VirtualHost *:80>
與不同
ServerName www.domain.tld
不同的名字寫在
hosts
文件中並且都指向127.0.0.1
.不幸的是,虛擬主機不起作用。只有第一個
<VirtualHost>
標籤似乎是活動的。httpd.exe
在開始和進入時什麼也沒說error.log
。如何讓虛擬主機在這里工作?
編輯
我認為沒有理由需要 DNS。
GET
請求包含站點的符號名稱,因此,伺服器具有區分呼叫哪個虛擬主機的所有資訊。編輯 1
我發現虛擬主機確實可以工作(沒有 DNS!)。這是一個特定主機的問題。
虛擬主機在以下文件中配置:extra/httpd-vhosts.conf
這是有關如何配置虛擬主機的範例
<VirtualHost *:80> ServerAdmin webmaster@website.com DocumentRoot "/var/sites/website" <Directory "/var/sites/website"> Options Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> ServerName www.website.com #ServerAlias www1.website.com ErrorLog "logs/error_log" CustomLog "logs/access_log" common </VirtualHost>
記得 :
在您的 DNS 管理器上配置您的 Normal 和 Aliasses 名稱,並記住將此文件包含在 httpd.conf 主指令中。
包括 conf/extra/httpd-vhosts.conf