
解決IIS 上的「未啟用PHP 中的套接字傳輸「ssl」」錯誤
嘗試在IIS 上的PHP 啟用SSL 套接字傳輸時,您可能會遇到錯誤:「無法找到套接字傳輸'ssl' - 您在配置PHP 時是否忘記啟用它?」儘管進行了大量的故障排除,包括配置擴展和DLL,但問題仍未得到解決。
要解決此問題,請考慮以下特定步驟:
在 php.ini 檔案中:
- 找到「extension_dir=」參數並取消註解。
- 取消註解「extension=php_openssl.dll」行。
PHP 安裝:
- 確保 PHP 配置啟用了「ssl」傳輸。
- 驗證 OpenSSL 函式庫(libeay32.dll 和 ssleay32.dll)是否存在於 PHP 資料夾、Windows 目錄和 Windows/system32 中
- 授予必要的 PHP 檔案和 DLL 適當的檔案權限。
- 將 PHP 安裝路徑加入 Windows PATH 環境變數。
伺服器設定:
- 每次設定變更後重新啟動 IIS。
- 確認伺服器上啟用了 SSL,特別是連接埠 443。
故障排除步驟:
- 使用下列PHP 腳本測試OpenSSL 連線:
1 2 3 4 5 6 7 8 9 10 11 | <?php
$hostname = 'www.my.site.com' ;
$port = 443;
$ssl_socket = @ fsockopen ( "ssl://{$hostname}" , $port , $errno , $errstr , 10);
if (! $ssl_socket ) {
echo "SSL connection failed: [{$errno}] $errstr\n" ;
} else {
echo "SSL connection successful.\n" ;
}
|
登入後複製
- 有與OpenSSL 相關的錯誤。
- 停用其他可能會幹擾 SSL 功能的擴充或模組。
透過執行這些詳細步驟,您應該能夠在IIS 伺服器上成功啟用PHP 中的「ssl」套接字傳輸並解析「Socket」 PHP 中的傳輸「ssl」未啟用」錯誤。
以上是如何解決在 IIS 上配置 PHP 時出現的「無法找到套接字傳輸 'ssl' 未啟用」錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!