2012-01-13 132 views
6

我已經用wamp(Apache服務器)配置了openssl。但是,當我使用gdata API時,我得到以下錯誤。無法連接到ssl

(!) Fatal error: Uncaught exception 'Zend_Http_Client_Adapter_Exception' with message ' in C:\Zend_1_11_11\library\Zend\Http\Client\Adapter\Socket.php on line 234 
(!) Zend_Http_Client_Adapter_Exception: Unable to Connect to ssl://accounts.google.com:443. Error #10060: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in C:\Zend_1_11_11\library\Zend\Http\Client\Adapter\Socket.php on line 234 

有人幫我在這...

+1

錯誤僅表示您無法連接到目標主機。您是否至少可以ping通accounts.google.com?你能夠使用opessl命令連接到端口443就像「openssl s_client -connect accounts.google.com:443」嗎?你可以嘗試增加超時屬性值 – rkosegi 2012-01-13 05:29:42

+0

感謝您的輸入,但我在代理服務器工作,所以我可以'ping任何:(對於窗口我需要安裝openssl客戶端 請讓我知道我可以做一些其他的解決方法.. – Neelesh 2012-01-13 05:46:21

+1

你回答自己。你是代理後面,你無法連接的原因。 – rkosegi 2012-01-13 05:48:15

回答

0

你是落後的代理,所以你不能連接directly.Try使用的Zend/HTTP /客戶/適配器/ Proxy.php而不是Zend的\的Http \客戶端\適配器\ Socket.php

+0

謝謝你的幫助..可以ü請幫我從哪裏可以改變它我是新手在Zend :( – Neelesh 2012-01-13 08:50:51

+0

我改變了client.php中的適配器Zend_Http_Client_Adapter_Proxy但它也沒有工作...任何幫助 – Neelesh 2012-01-13 09:29:25

13

檢查SSL模塊在php.ini文件中激活:

extension=php_openssl.dll 
+0

是我的第一步。順便說一句,我解決了這個問題。謝謝@Mikhail – Neelesh 2012-03-15 06:36:28

+0

@Neelesh那麼解決方案是什麼? – Pavlo 2015-03-24 12:00:42

+0

@Pavlo它的老線程,所以我不記得解決方案。 :(對不起 – Neelesh 2015-03-25 07:27:19

0

回答米哈伊爾我在高山上運行它並沒有爲我工作Linux和.dll只是Windows擴展。不要在Windows之外使用它,它只會添加警告。

解決我的問題:

我有一個自簽名的證書,這是無法建立連接。

要檢查它是否是問題,你可以提出一個要求:

wget的方式:

// not working: 
wget https://accounts.google.com:443 
// working: 
wget https://accounts.google.com:443 --no-check-certificate 

或捲曲方式:

// not working: 
curl https://accounts.google.com:443 
// working: 
curl https://accounts.google.com:443 -k 

爲了臨時解決它在我的dev搬運工容器,我添加了使用捲曲適配器並且沒有檢查證書的代碼:

$config = array(
     'adapter'  => 'Zend_Http_Client_Adapter_Curl', 
     'curloptions' => [CURLOPT_SSL_VERIFYPEER => false, CURLOPT_SSL_VERIFYHOST => false] 
    ); 
    $client = new Zend_Http_Client(url_combine([$this->_url, $call]), $config);