首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为NuSOAP更改输出IP

为NuSOAP更改输出IP
EN

Stack Overflow用户
提问于 2016-10-02 14:57:59
回答 1查看 622关注 0票数 1

我有一个有专用IP地址的cPanel主机,

但是,传出IP仍然是主机提供程序的共享IP (应该是这样)。

我需要使用带有专用IP的nusoap进行一些传出电话:

代码语言:javascript
复制
$nusoap = new nusoap_client("https://URL/");
$call   = $nusoap->call(...);

如何用NuSOAP在这里更改传出IP?

我知道如何使用cURL (curl_setopt($ch, CURLOPT_INTERFACE, $website_ip);)来实现它,但是如何使用这种方法实现相同的功能。几个小时以来,服务器端和php端一直在工作,但仍然无法弄清楚。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-06 03:16:28

1)使用PHP的SoapClient而不是NuSoap (从PHP5开始就可以使用它,希望您不会继续使用PHP4,因为它非常不受支持,NuSoap库本身已经3年多没有更新了)。

2)可以将流上下文传递给具有SoapClient选项集的bindto构造函数。

学分:直接从Is it possible to specify the outgoing network interface to use for a PHP SoapClient?取得

代码语言:javascript
复制
$opts = array(
    'socket' => array(
        'bindto' => '192.168.0.100:0',
     ),
);

$ctx = stream_context_create($opts);

$client = new SoapClient('the.wsdl', array('stream_context' => $ctx));

编辑:如果你必须使用NuSoap,你试过吗

代码语言:javascript
复制
nusoap_client->setCurlOption(CURLOPT_INTERFACE, $website_ip)

来文提交人:

代码语言:javascript
复制
function setCurlOption($option, $value) {
    $this->debug("setCurlOption option=$option, value=");
    $this->appendDebug($this->varDump($value));
    $this->curl_options[$option] = $value;
}
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39818264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档