В локальном AppEngine запрос curl дает следующий результат, который я ожидаю.
[url] => https://spreadsheets.google.com/feeds/spreadsheets/private/full [content_type] => application/atom+xml; charset=UTF-8 [http_code] => 200 [header_size] => 1243 [request_size] => 231 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 1.05885 [namelookup_time] => 0.520259 [connect_time] => 0.529659 [pretransfer_time] => 0.611242 [size_upload] => 0 [size_download] => 7786 [speed_download] => 7353 [speed_upload] => 0 [download_content_length] => -1 [upload_content_length] => -1 [starttransfer_time] => 1.021271 [redirect_time] => 0 [redirect_url] => [primary_ip] => 212.51.211.41 [certinfo] => Array ( ) [primary_port] => 443 [local_ip] => 192.168.0.1 [local_port] => 59361
)
но при нажатии на AppEngine возвращается следующее:
[url] => https://spreadsheets.google.com/feeds/spreadsheets/private/full [content_type] => [http_code] => 0 [header_size] => 0 [request_size] => 0 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0 [namelookup_time] => 0.056215 [connect_time] => 0 [pretransfer_time] => 0 [size_upload] => 0 [size_download] => 0 [speed_download] => 0 [speed_upload] => 0 [download_content_length] => -1 [upload_content_length] => -1 [starttransfer_time] => 0 [redirect_time] => 0 [redirect_url] => [primary_ip] => [certinfo] => Array ( ) [primary_port] => 0 [local_ip] => [local_port] => 0
Любые идеи относительно того, почему это не работает на AppEngine в производстве? Я подозреваю, что это связано с сертификатами SSL.
Я установил следующие параметры:
Php.ini. – extension = "curl.so" CURLOPT_SSL_VERIFYPEER установлен в значение false.
$ requestSslContext ["cafile"] = dirname (FILE). '/cacerts.pem'; в IO / Stream.php прокомментирован.
Чтобы получить эту работу:
В php.ini Для локальной среды dev используйте
extension = "curl.so"
Для производственной среды используйте
google_app_engine.enable_curl_lite = "1"