在curl上定义主机和不同的请求地址

时间:2011-11-05 14:48:28

标签: php scripting curl nginx

我想在新主机上自动安装某些软件,以便DNS服务器不将此域指向所需的服务器。

是否可以使用cURL完成安装过程?我需要将REQUEST_HOST和REQUEST_ADDR设置为2个不同的东西。

示例:

  • 我想在机器上设置wordpress博客gowordpress.tld 123.456.789.1
  • gowordpress.tld的DNS记录设置为987.654.​​321.1
  • 主机123.456.789.1上的网络服务器设置为servername .gowordpress.com(nginx)
  • 我想在Host上使用PHP脚本完成这些步骤 123.456.789.1
  • 我想使用cURL。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

您必须以URI格式提供IP地址,并使用CURLOPT_HTTPHEADER将主机指定为cURL选项之一:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://123.123.123.123/');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Host: gowordpress.tld') );
$res = curl_exec($ch);
curl_close($ch);

答案 1 :(得分:1)

或直接从命令行执行:

curl -H 'Host: gowordpress.tld' http://123.456.789.1/

要仅检查响应状态和标题,请使用-I开关:

curl -I -H 'Host: gowordpress.tld' http://123.456.789.1/

Curl实用程序适用于所有基于debian的系统:apt-get install curl