2014-12-22 202 views
3

我在運行Ubuntu 12.04和Apache的服務器上有一堆腳本。目前,我可以通過兩種方式訪問​​站點:通過IP和域名,例如:http://example.comhttp://1.1.1.1其中example.com有一個指向1.1.1.1的A記錄。我的問題是,當站點被服務器IP訪問而不是域名訪問時,有沒有辦法拋出403或類似的錯誤?只允許通過Apache訪問域名

我能找到關於我的問題的一個鏈接是Apache HOW-TOs,但是,沒有關於如何實現這一點的信息。我的假設是,我必須編輯默認虛擬主機的配置文件,但我不知道要改變什麼。或者也許有一個模塊呢?

回答

5

將這個規則在你的虛擬主機配置

RewriteEngine on 
    RewriteCond %{HTTP_HOST} ^1\.1\.1\.1$ 
    RewriteRule^- [F] 
+0

我更換了服務器的實際IP的佔位符並重新加載配置,很明顯,但沒有奏效。另外,'error.log'和'access.log'文件沒有顯示任何特定的內容。可能是什麼問題? – arnaudoff

+0

您是否將規則放在example.com的標籤中?另外 - 確保mod_rewrite加載到httpd.conf中。 – slash

+0

這似乎是我錯過了一個斜槓,它現在工作正常。謝謝! – arnaudoff

相關問題