我無法使用ssl://方案打開網址。詳圖:Debian 6下的XAMPP:無法打開「ssl://」網址
phpinfo()
:http://pastie.org/2391404
示例代碼:
$socket = @fsockopen("ssl://cgw.ubb.bg", 443, $errno, $errstr, 30);
if (!$socket) {
$err = "$errstr ($errno) - " . $socket;
echo "Unable to connect. $err";
} else {
echo "Connected.";
fclose($socket);
}
echo PHP_EOL;
我所得到的迴應是這樣的:
Unable to connect. (0) -
(是的,我曾嘗試與連接telnet /瀏覽器等,主機/端口組合不是問題。)
換句話說,errno爲0,並且不提供錯誤消息。
當我把這個/opt/lampp/etc/php.ini
:
extension="openssl.so"
我收到此錯誤:
Warning: PHP Startup: Unable to load dynamic library '/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/openssl.so' - /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/openssl.so: cannot open shared object file: No such file or directory in Unknown on line 0
唉,的確沒有openssl.so
文件在那裏。
我的XAMPP平臺是:i686-pc-linux-gnu
。
我的問題是:
我可以「欺騙」不知何故剛下載正確的文件,並用它做什麼? 如果不是,我怎麼能從源代碼編譯它,並將它整合到XAMPP中而不會將它拆開?
編輯: 這是一個可恥的,迄今爲止沒有可行的建議。考慮到我使用了現成的XAMPP安裝(基本上解壓縮了存檔),並且XAMPP的使用非常廣泛,我很驚訝沒有人發現這個問題。
對不起,這需要幾天,一直很忙。嘗試你的代碼片段,這裏是響應: '錯誤:140773F2:SSL例程:SSL23_GET_SERVER_HELLO:sslv3警告第3行test1.php中的意外消息' '警告:file_get_contents():無法在test1.php中啓用加密上線3' '警告:的file_get_contents(https://cgw.ubb.bg/):未能打開流:操作test1.php失敗上線3' 的行是: '$數據=的file_get_contents ('https://cgw.ubb.bg/');' 你能幫忙嗎?我現在要去看看這些錯誤。 – dimitarvp
可悲的是這些鏈接無濟於事。 :/ – dimitarvp
畢竟,我最終直接在實時服務器上編寫了我需要的功能(問題不存在)。儘管我在Google上花費了數小時,但仍無法找到任何解決方案。標記爲答案,因爲即使它沒有解決任何問題,它至少包含一些信息。 ;) – dimitarvp