1、apache 基於域名虛擬主機配置,本機上訪問 www.test.com指向 127.0.0.1/test
是修改這兩個文件沒錯,我測試成功,應該你是哪裡配置錯了,apache文件修改後要重啟。
一、hosts文件最下面換行添加:127.0.0.1 www.test.com;
註:
1、win 下 hosts文件路徑:C:\WINDOWS\system32\drivers\etc\hosts
2、綁定hosts,是為了訪問 www.test.com時,指向的IP是你自己的電腦;hosts文件綁定後,你可以用cmd ping命令,ping www.test.com,測試ping到的IP是不是你自己設置IP(127.0.0.1)
二、apache配置文件修改
1、打開apache配置文件httpd.conf,apache綁定網站路徑和域名www.test.com,保存;
2、重啟apache;註:修改apache配置文件後,必須重啟apache;
3、附apache配置文件默認路徑:C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf
2、apache可以實現 配置了基於域名的虛擬主機後ip還可以訪問嗎?
可以的設置的!
具體設置你可以在配置文件域名處建立別名用你的ip地址就行
不會設置的話,可以登陸智強站長論壇學習下!
3、懸賞100分求apache多域名綁定不同目錄
下面是apache 的文檔:
必須指定伺服器IP地址(和可能的埠)來使主機接受請求,這個可以用NameVirtualHost指令來進行配置。如果伺服器上所有的IP地址都會用到,你可以用"*"作為NameVirtualHost的參數。如果你打算使用多埠(如運行SSL)你必須在參數中指定一個埠號,比如"*:80"。請注意,在NameVirtualHost指令中指定IP地址並不會使伺服器自動偵聽那個IP地址。請參閱設置Apache使用的地址和埠一章獲取更多詳情。另外,這里設定的IP地址必須對應伺服器上的一個網路介面。
下一步就是為每個虛擬主機建立<VirtualHost>段。<VirtualHost>的參數與NameVirtualHost的參數必須是一樣的(比如說,一個IP地址或"*"代表的所有地址)。在每個<VirtualHost>段中,至少要有一個ServerName指令來指定伺服哪個主機和一個DocumentRoot指令來說明這個主機的內容位於文件系統的什麼地方。
取消中心主機(Mainhost)
如果你想在現有的web伺服器上增加虛擬主機,你必須也為現存的主機建造一個<VirtualHost>定義塊。這個虛擬主機中ServerName和DocumentRoot所包含的內容應該與全局的ServerName和DocumentRoot保持一致。還要把這個虛擬主機放在配置文件的最前面,來讓它扮演默認主機的角色。
比如說,假設你正在為域名www.domain.tld提供服務,而你又想在同一個IP地址上增加一個名叫www.otherdomain.tld的虛擬主機,你只需在httpd.conf中加入以下內容:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.domain.tld
ServerAlias domain.tld *.domain.tld
DocumentRoot /www/domain
</VirtualHost>
<VirtualHost *:80>
ServerName www.otherdomain.tld
DocumentRoot /www/otherdomain
</VirtualHost>
當然,你可以用一個固定的IP地址來代替NameVirtualHost和<VirtualHost>指令中的"*"號,以達到一些特定的目的。比如說,你可能會希望在一個IP地址上運行一個基於域名的虛擬主機,而在另外一個IP地址上運行一個基於IP的或是另外一套基於域名的虛擬主機。
很多伺服器希望自己能通過不只一個域名被訪問。我們可以把ServerAlias指令放入<VirtualHost>小節中來解決這個問題。比如說在上面的第一個<VirtualHost>配置段中ServerAlias指令中列出的名字就是用戶可以用來訪問同一個web站點的其它名字:
ServerAlias domain.tld *.domain.tld
這樣,所有對域domain.tld的訪問請求都將由虛擬主機www.domain.tld處理。通配符標記"*"和"?"可以用於域名的匹配。當然你不能僅僅搞個名字然後把它放到ServerName或ServerAlias里就算完了。你必須先在你的DNS伺服器上進行配置,將這些名字和您伺服器上的一個IP地址建立映射關系。
最後,你可以把其他一些指令放入<VirtualHost>段中,以更好的配置一個虛擬主機。大部分指令都可以放入這些<VirtualHost>段中以改變相應虛擬主機配置。如果您想了解一個特定的指令是否可以這樣運用,請參見指令的作用域。主伺服器(main server)范圍內的配置指令(在所有<VirtualHost>配置段之外的指令)僅在它們沒有被虛擬主機的配置覆蓋時才起作用。
這樣,當一個請求到達的時候,伺服器會首先檢查它是否使用了一個能和NameVirtualHost相匹配的IP地址。如果能夠匹配,它就會查找每個與這個IP地址相對應的<VirtualHost>段,並嘗試找出一個與請求的主機名相同的ServerName或ServerAlias配置項。如果找到了,它就會使用這個伺服器。否則,將使用符合這個IP地址的第一個列出的虛擬主機。
綜上所述,第一個列出的虛擬主機充當了默認虛擬主機的角色。當一個IP地址與NameVirtualHost指令中的配置相符的時候,主伺服器中的DocumentRoot將永遠不會被用到。所以,如果你想創建一段特殊的配置用於處理不對應任何一個虛擬主機的請求的話,你只要簡單的把這段配置放到<VirtualHost>段中,並把它放到配置文件的最前面就可以了。
認真讀完的話,你就知道怎麼做了
希望對你有幫助
4、apache 基於域名的虛擬主機 限制某個IP地址訪問
這個你可以在主機控制面板中的拒絕管理IP功能中設置,或者在.htaccess配置文件中添加相關的禁用IP代碼就可以了,當然有些程序也有相應的功能的,這個你在程序後台設置下就行了,如果不清楚的話可以去美國主機偵探論壇看看,上面討論這個方面的人還是比較多的。
5、為什麼apache基於主機名或者域名的訪問限制不能正確執行
問題分析:原因可能有兩個:第一是DNS上面的數據有問題,比如你對foobar.example.com做了訪回問限制,但是實際上foobar.example.com只是答其他域名的別名,這樣foobar.example.com來訪問你的時候,Apache通過地址-域名查找之後返回的是真實的域名,而不是foobar.example.com,所以正確執行訪問限制;第二是Apache的配置中的檢驗不充分。解決:對於第一種情況,必須找出foobar.example.com的真實域名,才能對它進行訪問限制,對於第二種情況,你可以在編譯的時候加入EXTRA_CFLAGS=-DMAXIMUM_DNS參數,但是這樣會導致頻繁查找DNS,從而造成性能降低。
6、apache基於自定義域名訪問虛擬主機如何使得其區域網內均可以訪問?
路由器挾持!把指定的域名映射到你的ip上@!~
7、為什麼apache基於主機名或者域名的訪問限制不能正確執行
問題分析:原因可能有兩個:第一是DNS上面的數據有問題,比如你對foobar.example.com做了訪問限制,但是實際上foobar.example.com只是其他域名的別名,這樣foobar.example.com來訪問你的時候,Apache通過地址-域名查找之後返回的是真實的域名,而不是foobar.example.com,所以正確執行訪問限制;第二是Apache的配置中的檢驗不充分。解決:對於第一種情況,必須找出foobar.example.com的真實域名,才能對它進行訪問限制,對於第二種情況,你可以在編譯的時候加入EXTRA_CFLAGS=-DMAXIMUM_DNS參數,但是這樣會導致頻繁查找DNS,從而造成性能降低。
8、linux apache 服務搭建,基於虛擬主機的訪問,提示:無法在「www.abc.com」找到該伺服器
參考http://www.myfreelinux.com/?p=449