2012-06-18 40 views
1

PHP的服務器上啓用了OpenSSL的擴展名(可以看到的phpinfo())HTTPS,捲曲或請求的file_get_contents導致PHP崩潰

PHP版本5.2.14

'的./configure'「 - 前綴=/usr/local/webserver/php''--with-config-file-path =/usr/local/webserver/php/etc''--with-mysql =/usr/lib64/mysql'' - 與 - mysqli =/usr/bin/mysql_config''--with-iconv-dir =/usr/local''--with-freetype-dir''--with-jpeg-dir''--with-png- dir''--with-zlib''--with-libxml-dir =/usr''--enable-xml''--disable-rpath''--enable-discard-path'' - 啓用安全-mode''--enable-bcmath''--enable-shmop''--enable-sysvsem''--enable-inline-optimizatio n''--with-curl''--with-curlwrappers''--enable-mbregex''--enable-fastcgi''--enable-fpm''--enable-force-cgi-redirect'' - -enable-mbstring''--with-mcrypt''--with-gd''--enable-gd-native-ttf''--with-openssl''--with-mhash''--enable-pcntl '--enable-sockets''--with-ldap''--with-ldap-sasl''--with-xmlrpc'' - 啓用zip'' - 啓用皁'

PHP-fpm.log

6月18日10:03:08.882866 [警告] fpm_stdio_child_said(),線167:子8665(池默認)說成標準錯誤: 「」

6月18日10時03分:08.884945 [公告] fpm_got_signal()第48行:接收SIGCHLD

10年6月18日:03:08.885008 [警告] fpm_children_bury(),線215:子8665(池默認)上信號退出11 SIGSEGV從開始33.717855秒後

10年6月18日:03:08.885573 [警告] fpm_stdio_child_said(),第167行:孩子8606(池默認)說,到第352行:孩子8689(池默認)啓動

6月18日10:03:09.689830 stderr:[[Mon Jun 18 10:03:09 2012] 225

Jun 18 10:03:09.690014 [警告] fpm_stdio_child_said(),第167行:子級8606(池默認值)說成標準錯誤: 「] [聲明] eAccelerator在(8606):PHP墜毀curl_exec()的opline 130在xxx.php:383」

但是,當經由HTTPS,nginx的請求返回502(壞柵極方式)錯誤。

如何找到原因?

+0

究竟這個502從哪裏來?你正在對自己的服務器進行請求?某些OTHER網站正在返回502?你的服務器吐出一個502任何時候你從其他網站請求ssl內容? –

+0

向其他服務器發送請求時,我自己的php腳本在調用curl_init()或file_get_contents()時返回502。 – kran

+0

然後查看服務器錯誤日誌以獲取更多詳細信息。你在瀏覽器中得到的是故意模糊的,以防止泄漏內部配置細節 –

回答

0

我前幾天遇到了一個這樣的問題,我的系統是Linux CentOS6.2, 最後我用CentOS 5.6,問題解決了,我想是系統版本和openSSL版本不匹配的原因,
我的英文不是很好,但希望對你有所幫助

0

這是libcurl的問題。

確保libcurl具有openssl支持。

checking for SSL support in libcurl... yes 
checking for openssl support in libcurl... yes