2017-10-16 101 views
0

我有一個具有不同IP地址的Web服務器。 阿帕奇virtualhosts和DNS映射是這樣的:來自虛擬主機的攻擊請求有錯ip

ip1 => ip1.domain.com 
ip2 => ip2.domain.com 
ip3 => ip3.domain.com 

我這樣做,所以我可以從不同的IP地址使用guzzlehttp。

但如果我這樣做,任何那些virthual主機上:

$client = new \GuzzleHttp\Client(); 
$url = "https://www.whatismyip.com"; 
$response = $client->request('GET', $url); 
$content = $response->getBody(); 

我walways從服務器上獲得IP,而不是從虛擬主機。

我錯過了什麼嗎?有一個更好的方法嗎 ?

感謝您的幫助,

回答

0

原來所有需要的是在Guzzle中指定網絡接口。

不需要不同的虛擬主機,一個就足夠了。

實施例:

$client = new \GuzzleHttp\Client(['curl' => [ CURLOPT_INTERFACE => 'eth0:1' ]]);