Apache-2.2

Apache 2.2 如何知道我伺服器的第二個 IP,我該如何隱藏它?

  • March 28, 2013

我的伺服器有兩個 IP 地址,我想要兩個 Apache 服務分別監聽每一個。DNS有這個:

  1. 將“內部網”指向伺服器名稱的 CNAME 別名
  2. 將伺服器名指向 IP 1 的主機 (A) 記錄
  3. 將“dev”指向 IP 2 的主機 (A) 記錄

我有一個執行 Apache 的服務Listen intranet:80,但它決定監聽 IP 1IP 2,所以我無法啟動第二個服務。當通過 DNS 的路徑應該將它引導到 IP 1 時,它是如何到達 IP 2 的?我的猜測是它解析為 127.0.0.1,然後綁定到所有可用的 IP。如果是這種情況,Listen IP1:80實際上會強制它不使用 IP 2,還是會應用相同的邏輯並且它將使用所有可用的 IP?如果是後者,實際上有沒有辦法將 Apache 配置為僅偵聽 IP 1?(我只問而不是實驗,因為這是一個實時系統,我不想造成比我需要的更多的停機時間。)

使用Listen IP1:80它只會綁定到該IP。

http://httpd.apache.org/docs/2.2/bind.html

當 Apache 啟動時,它會綁定到本地機器上的某個埠和地址,並等待傳入的請求。預設情況下,它會監聽機器上的所有地址。但是,可能需要告訴它在特定埠上偵聽,或僅在選定地址上偵聽,或兩者兼而有之。

引用自:https://serverfault.com/questions/493298