用apache搭建的WEB伺服器,如何讓網友只能通過設定的功能變數名稱訪問,而不能直接通過伺服器的IP位址訪問呢,有兩個方法可以實現(僅限於我知道的,當然肯定還會有其他方法可以實現), 都是修改HTTPd.conf檔來實現的,下面舉例說明。
方法一:在HTTPd.conf檔最後面,加入以下代碼
NameVirtualHost 221.*.*.*
<VirtualHost 221.*.*.*>
ServerName 221.*.*.*
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>
<VirtualHost 221.*.*.*>
DocumentRoot "c:/web"
ServerName www.jzread.com
</VirtualHost>
說明:藍色部分是實現拒絕直接通過221.*.*.*這個IP的任何訪問請求,這時如果你用221.*.*.*訪問,會提示拒絕訪問。 紅色部分就是允許通過www.jzread.com這個功能變數名稱訪問,主目錄指向c:/web(這裡假設你的網站的根目錄是c:/web)
方法二:在HTTPd.conf檔最後面,加入以下代碼
NameVirtualHost 221.*.*.*
<VirtualHost 221.*.*.*>
DocumentRoot "c:/test"
ServerName 221.*.*.*
</VirtualHost>
<VirtualHost 221.*.*.*>
DocumentRoot "c:/web"
ServerName www.jzread.com
</VirtualHost>
說明:藍色部分是把通過221.*.*.*這個IP直接存取的請求指向c:/test目錄下,這可以是個空目錄,也可以在裡面建一個首頁檔,如index.hmtl,首面檔內容可以是一個聲明,說明不能通過IP直接存取。 紅色部分的意思跟方法一是一樣的。
注:修改後要重啟apache