Unexpected "Unsupported protocol: HTTPS" error in Apache/PHP/curl
I have encountered a frustrating bug trying to POST to an HTTPS site using curl in PHP running Apache under RedHat Enterprise Linux 5.
REDHAT LINUX: Linux bsawebserver 2.6.18-92.1.10.el5 #1 SMP Wed Jul 23 03:56:11 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux APACHE: Apache 2.2.3 PHP: php 5.1.6-20.el5_2.1.x86_64 CURL: curl 7.15.5-2.el5 OPENSSL: openssl 0.9.8b-10el5 When I try to POST from the PHP/curl code running in an Apache web page (code shown below) I get a curl error message: Unsupported protocol: https(1) However, if I use EXACTLY the same parameters in a command-line call to curl it works perfectly. (e.g. # curl -d "<named value string>" target_site) AND, if I put the code into a file named HTTPS_TEST.php (see below) and run it on the server like # php ./HTTPS_TEST.php it works perfectly. Curl is enabled in PHP as shown in the results of phpinfo() below, and according to the results of the curl_version() call also shown below, curl is configured to connect to https sites. Does anyone have any idea why the https protocol isn't recognized from within an Apache web page, but will work using command-line curl or even using command-line PHP? Is there a configuration parameter set incorrectly in Apache somewhere? This is maddening. ================================================================= PHP PROGRAM CODE (SNIPPET FROM WHERE ERROR APPEARS): // setting the curl parameters. $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $API_Endpoint); curl_setopt($ch, CURLOPT_VERBOSE, 1); // turning off the server and peer verification(TrustManager Concept). curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); // NVPRequest for submitting to server $nvpreq = "METHOD=$methodName_&VERSION=$version&PWD=$API_Password&USER=$API_UserName&SIGNATURE=$API_Signature$ nvpStr_"; // setting the nvpreq as POST FIELD to curl curl_setopt($ch, CURLOPT_POSTFIELDS, $nvpreq); // getting response from server $httpResponse = curl_exec($ch); ERROR REPORTED HERE -- "UNSUPPORTED PROTOCOL: HTTPS(1)" >>>>> if(!$httpResponse) { exit("PPHttpPost - $methodName_ failed: ".curl_error($ch).'('.curl_errno($ch).')'); } ================================================================ CONTENTS OF FILE HTTPS_TEST.php, WHICH WORKS PERFECTLY WHEN CALLED ON COMMAND LINE LIKE # php ./HTTPS_TEST.php <?php $method_name = "SetExpressCheckout"; $version = urlencode("52.0"); $API_Password = urlencode("xxxxxxxx"); $API_UserName = urlencode("xxxxxxxxxxxxxxxxxx"); $API_Signature = urlencode("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"); $nvpStr_ = "&Amt=19.95&ReturnUrl=http%3A%2F%2F71.33.78.4%2FPaid.php&CANCELURL=http%3A%2F%2F71.33.78.4%2FCart.ph p&PAYMENTACTION=Sale&CURRENCYCODE=USD"; // setting the curl parameters. $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://api-3t.sandbox.paypal.com/nvp"); curl_setopt($ch, CURLOPT_VERBOSE, 1); // turning off the server and peer verification(TrustManager Concept). curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); // NVPRequest for submitting to server $nvpreq = "METHOD=$method_name&VERSION=$version&PWD=$API_Password&USER=$API_UserName&SIGNATURE=$API_Signature$ nvpStr_"; // setting the nvpreq as POST FIELD to curl curl_setopt($ch, CURLOPT_POSTFIELDS, $nvpreq); // getting response from server $httpResponse = curl_exec($ch); NO ERROR AT THIS POINT!!! if(!$httpResponse) { exit("PPHttpPost - $methodName_ failed: ".curl_error($ch).'('.curl_errno($ch).')'); } else { print_r($httpResponse); } ?> ================================================================== RESULTS OF curl_version() CALL MADE JUST BEFORE ERROR (note HTTPS protocol): Array ( [version_number] => 462597 [age] => 2 [features] => 1597 [ssl_version_number] => 0 [version] => 7.15.5 [host] => x86_64-redhat-linux-gnu [ssl_version] => OpenSSL/0.9.8b [libz_version] => 1.2.3 [protocols] => Array ( [0] => tftp [1] => ftp [2] => telnet [3] => dict [4] => ldap [5] => http [6] => file [7] => https [8] => ftps ) ) ================================================================= RESULTS OF phpinfo() CALL MADE JUST BEFORE ERROR: PHP Version 5.1.6 System Linux bsawebserver 2.6.18-92.1.10.el5 #1 SMP Wed Jul 23 03:56:11 EDT 2008 x86_64 Build Date Jun 12 2008 05:03:35 Configure Command './configure' '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-libdir=lib64' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--with-pic' '--disable-rpath' '--without-pear' '--with-bz2' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png' '--with-pspell' '--with-expat-dir=/usr' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-track-vars' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-kerberos' '--enable-ucd-snmp-hack' '--with-unixODBC=shared,/usr' '--enable-memory-limit' '--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--with-mime-magic=/usr/share/file/magic.mime' '--without-sqlite' '--with-libxml-dir=/usr' '--with-xml' '--with-system-tzdata' '--with-apxs2=/usr/sbin/apxs' '--without-mysql' '--without-gd' '--without-odbc' '--disable-dom' '--disable-dba' '--without-unixODBC' '--disable-pdo' '--disable-xmlreader' '--disable-xmlwriter' Server API Apache 2.0 Handler Virtual Directory Support disabled Configuration File (php.ini) Path /etc/php.ini Scan this dir for additional .ini files /etc/php.d additional .ini files parsed /etc/php.d/bcmath.ini, /etc/php.d/dba.ini, /etc/php.d/dbase.ini, /etc/php.d/dom.ini, /etc/php.d/gd.ini, /etc/php.d/imap.ini, /etc/php.d/ldap.ini, /etc/php.d/mbstring.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/ncurses.ini, /etc/php.d/odbc.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_odbc.ini, /etc/php.d/pdo_pgsql.ini, /etc/php.d/pdo_sqlite.ini, /etc/php.d/pgsql.ini, /etc/php.d/snmp.ini, /etc/php.d/soap.ini, /etc/php.d/xmlreader.ini, /etc/php.d/xmlrpc.ini, /etc/php.d/xmlwriter.ini, /etc/php.d/xsl.ini PHP API 20041225 PHP Extension 20050922 Zend Extension 220051025 Debug Build no Thread Safety disabled Zend Memory Manager enabled IPv6 Support enabled Registered PHP Streams php, file, http, ftp, compress.bzip2, compress.zlib, https, ftps Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, sslv2, tls Registered Stream Filters string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, bzip2.*, zlib.* Configuration PHP Core Directive Local Value Master Value allow_call_time_pass_reference Off Off allow_url_fopen On On always_populate_raw_post_data Off Off arg_separator.input & & arg_separator.output & & asp_tags Off Off auto_append_file no value no value auto_globals_jit On On auto_prepend_file no value no value browscap no value no value default_charset no value no value default_mimetype text/html text/html define_syslog_variables Off Off disable_classes no value no value disable_functions no value no value display_errors On On display_startup_errors Off Off doc_root no value no value docref_ext no value no value docref_root no value no value enable_dl On On error_append_string no value no value error_log no value no value error_prepend_string no value no value error_reporting 2047 2047 expose_php On On extension_dir /usr/lib64/php/modules /usr/lib64/php/modules file_uploads On On highlight.bg #FFFFFF #FFFFFF highlight.comment #FF8000 #FF8000 highlight.default #0000BB #0000BB highlight.html #000000 #000000 highlight.keyword #007700 #007700 highlight.string #DD0000 #DD0000 html_errors On On ignore_repeated_errors Off Off ignore_repeated_source Off Off ignore_user_abort Off Off implicit_flush Off Off include_path .:/usr/share/pear:/usr/share/php .:/usr/share/pear:/usr/share/php log_errors On On log_errors_max_len 1024 1024 magic_quotes_gpc Off Off magic_quotes_runtime Off Off magic_quotes_sybase Off Off mail.force_extra_parameters no value no value max_execution_time 30 30 max_input_nesting_level 64 64 max_input_time 60 60 memory_limit 16M 16M open_basedir no value no value output_buffering 4096 4096 output_handler no value no value post_max_size 8M 8M precision 14 14 realpath_cache_size 16K 16K realpath_cache_ttl 120 120 register_argc_argv Off Off register_globals Off Off register_long_arrays Off Off report_memleaks On On report_zend_debug On On safe_mode Off Off safe_mode_exec_dir no value no value safe_mode_gid Off Off safe_mode_include_dir no value no value sendmail_from no value no value sendmail_path /usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i serialize_precision 100 100 short_open_tag On On SMTP localhost localhost smtp_port 25 25 sql.safe_mode Off Off track_errors Off Off unserialize_callback_func no value no value upload_max_filesize 2M 2M upload_tmp_dir no value no value user_dir no value no value variables_order EGPCS EGPCS xmlrpc_error_number 0 0 xmlrpc_errors Off Off y2k_compliance On On zend.ze1_compatibility_mode Off Off apache2handler Apache Version Apache/2.2.3 (Red Hat) Apache API Version 20051115 Server Administrator bions@usa.net Hostname:Port BionWare.com:0 User/Group apache(48)/48 Max Requests Per Child: 100 - Keep Alive: on - Max Per Connection: 100 Timeouts Connection: 300 - Keep-Alive: 15 Virtual Server Yes Server Root /etc/httpd Loaded Modules core prefork http_core mod_so mod_auth_basic mod_auth_digest mod_authn_file mod_authn_alias mod_authn_anon mod_authn_dbm mod_authn_default mod_authz_host mod_authz_user mod_authz_owner mod_authz_groupfile mod_authz_dbm mod_authz_default util_ldap mod_authnz_ldap mod_include mod_log_config mod_logio mod_env mod_ext_filter mod_mime_magic mod_expires mod_deflate mod_headers mod_usertrack mod_setenvif mod_mime mod_dav mod_status mod_autoindex mod_info mod_dav_fs mod_vhost_alias mod_negotiation mod_dir mod_actions mod_speling mod_userdir mod_alias mod_rewrite mod_proxy mod_proxy_balancer mod_proxy_ftp mod_proxy_http mod_proxy_connect mod_cache mod_suexec mod_disk_cache mod_file_cache mod_mem_cache mod_cgi mod_version mod_php5 mod_proxy_ajp Directive Local Value Master Value engine 1 1 last_modified 0 0 xbithack 0 0 Apache Environment Variable Value HTTP_HOST bionware.com HTTP_USER_AGENT Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1 HTTP_ACCEPT text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 HTTP_ACCEPT_LANGUAGE en-us,en;q=0.5 HTTP_ACCEPT_ENCODING gzip,deflate HTTP_ACCEPT_CHARSET ISO-8859-1,utf-8;q=0.7,*;q=0.7 HTTP_KEEP_ALIVE 300 HTTP_CONNECTION keep-alive HTTP_COOKIE PHPSESSID=dc1o888t62qjul7mo5p15p27e3 CONTENT_TYPE application/x-www-form-urlencoded CONTENT_LENGTH 19 PATH /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/bion/bin SERVER_SIGNATURE <address>Apache/2.2.3 (Red Hat) Server at BionWare.com Port 80</address> SERVER_SOFTWARE Apache/2.2.3 (Red Hat) SERVER_NAME BionWare.com SERVER_ADDR 71.33.78.4 SERVER_PORT 80 REMOTE_ADDR 71.33.78.1 DOCUMENT_ROOT /var/www/BionWare/html/ SERVER_ADMIN bions@usa.net SCRIPT_FILENAME /var/www/BionWare/html/Checkout.php REMOTE_PORT 3005 GATEWAY_INTERFACE CGI/1.1 SERVER_PROTOCOL HTTP/1.1 REQUEST_METHOD POST QUERY_STRING no value REQUEST_URI /Checkout.php SCRIPT_NAME /Checkout.php HTTP Headers Information HTTP Request Headers HTTP Request POST /Checkout.php HTTP/1.1 Host bionware.com User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1 Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language en-us,en;q=0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive 300 Connection keep-alive Cookie PHPSESSID=dc1o888t62qjul7mo5p15p27e3 Content-Type application/x-www-form-urlencoded Content-Length 19 HTTP Response Headers X-Powered-By PHP/5.1.6 Expires Thu, 19 Nov 1981 08:52:00 GMT Cache-Control no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma no-cache Keep-Alive timeout=15, max=90 Connection Keep-Alive Transfer-Encoding chunked Content-Type text/html; charset=UTF-8 bz2 BZip2 Support Enabled Stream Wrapper support compress.bz2:// Stream Filter support bzip2.decompress, bzip2.compress BZip2 Version 1.0.3, 15-Feb-2005 ctype ctype functions enabled curl CURL support enabled CURL Information libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 date date/time support enabled Timezone Database Version 0.system Timezone Database internal Default timezone America/Denver Directive Local Value Master Value date.default_latitude 31.7667 31.7667 date.default_longitude 35.2333 35.2333 date.sunrise_zenith 90.583333 90.583333 date.sunset_zenith 90.583333 90.583333 date.timezone no value no value dom DOM/XML enabled DOM/XML API Version 20031129 libxml Version 2.6.26 HTML Support enabled XPath Support enabled XPointer Support enabled Schema Support enabled RelaxNG Support enabled exif EXIF Support enabled EXIF Version 1.4 $Id: exif.c,v 1.173.2.5 2006/04/10 18:23:24 helly Exp $ Supported EXIF Version 0220 Supported filetypes JPEG,TIFF ftp FTP support enabled gd GD Support enabled GD Version bundled (2.0.28 compatible) FreeType Support enabled FreeType Linkage with freetype FreeType Version 2.2.1 GIF Read Support enabled GIF Create Support enabled JPG Support enabled PNG Support enabled WBMP Support enabled XBM Support enabled gettext GetText Support enabled gmp gmp support enabled hash hash support enabled Hashing Engines md4 md5 sha1 sha256 sha384 sha512 ripemd128 ripemd160 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru gost adler32 crc32 crc32b haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5 iconv iconv support enabled iconv implementation glibc iconv library version 2.5 Directive Local Value Master Value iconv.input_encoding ISO-8859-1 ISO-8859-1 iconv.internal_encoding ISO-8859-1 ISO-8859-1 iconv.output_encoding ISO-8859-1 ISO-8859-1 imap IMAP c-Client Version 2004 SSL Support enabled Kerberos Support enabled ldap LDAP Support enabled RCS Version $Id: ldap.c,v 1.161.2.3 2006/01/01 12:50:08 sniper Exp $ Total Links 0/unlimited API Version 3001 Vendor Name OpenLDAP Vendor Version 20327 SASL Support Enabled libxml libXML support active libXML Version 2.6.26 libXML streams enabled mbstring Multibyte Support enabled Multibyte string engine libmbfl Multibyte (japanese) regex support enabled Multibyte regex (oniguruma) version 3.7.1 mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1. Directive Local Value Master Value mbstring.detect_order no value no value mbstring.encoding_translation Off Off mbstring.func_overload 0 0 mbstring.http_input pass pass mbstring.http_output pass pass mbstring.internal_encoding no value no value mbstring.language neutral neutral mbstring.strict_detection Off Off mbstring.substitute_character no value no value mime_magic mime_magic support invalid magic file, disabled Directive Local Value Master Value mime_magic.debug Off Off mime_magic.magicfile /usr/share/file/magic.mime /usr/share/file/magic.mime mysql MySQL Support enabled Active Persistent Links 1 Active Links 1 Client API version 5.0.45 MYSQL_MODULE_TYPE external MYSQL_SOCKET /var/lib/mysql/mysql.sock MYSQL_INCLUDE -I/usr/include/mysql MYSQL_LIBS -L/usr/lib64/mysql -lmysqlclient Directive Local Value Master Value mysql.allow_persistent On On mysql.connect_timeout 60 60 mysql.default_host no value no value mysql.default_password no value no value mysql.default_port no value no value mysql.default_socket no value no value mysql.default_user no value no value mysql.max_links Unlimited Unlimited mysql.max_persistent Unlimited Unlimited mysql.trace_mode Off Off mysqli MysqlI Support enabled Client API library version 5.0.45 Client API header version 5.0.45 MYSQLI_SOCKET /var/lib/mysql/mysql.sock Directive Local Value Master Value mysqli.default_host no value no value mysqli.default_port 3306 3306 mysqli.default_pw no value no value mysqli.default_socket no value no value mysqli.default_user no value no value mysqli.max_links Unlimited Unlimited mysqli.reconnect Off Off ncurses ncurses support enabled ncurses library version 5.5 color support yes odbc ODBC Support enabled Active Persistent Links 0 Active Links 0 ODBC library unixODBC ODBC_INCLUDE -I/usr/include ODBC_LFLAGS -L/usr/lib64 ODBC_LIBS -lodbc Directive Local Value Master Value odbc.allow_persistent On On odbc.check_persistent On On odbc.default_db no value no value odbc.default_pw no value no value odbc.default_user no value no value odbc.defaultbinmode return as is return as is odbc.defaultlrl return up to 4096 bytes return up to 4096 bytes odbc.max_links Unlimited Unlimited odbc.max_persistent Unlimited Unlimited openssl OpenSSL support enabled OpenSSL Version OpenSSL 0.9.8b 04 May 2006 pcre PCRE (Perl Compatible Regular Expressions) Support enabled PCRE Library Version 6.6 06-Feb-2006 PDO PDO support enabled PDO drivers mysql, odbc, pgsql, sqlite pdo_mysql PDO Driver for MySQL, client library version 5.0.45 PDO_ODBC PDO Driver for ODBC (unixODBC) enabled ODBC Connection Pooling Enabled, strict matching pdo_pgsql PDO Driver for PostgreSQL enabled PostgreSQL(libpq) Version 8.1.11 Module version 1.0.2 Revision $Id: pdo_pgsql.c,v 1.7.2.11 2006/03/14 10:49:18 edink Exp $ pdo_sqlite PDO Driver for SQLite 3.x enabled PECL Module version 1.0.1 $Id: pdo_sqlite.c,v 1.10.2.6 2006/01/01 12:50:12 sniper Exp $ SQLite Library 3.3.6 pgsql PostgreSQL Support enabled PostgreSQL(libpq) Version 8.1.11 Multibyte character support enabled SSL support enabled Active Persistent Links 0 Active Links 0 Directive Local Value Master Value pgsql.allow_persistent On On pgsql.auto_reset_persistent Off Off pgsql.ignore_notice Off Off pgsql.log_notice Off Off pgsql.max_links Unlimited Unlimited pgsql.max_persistent Unlimited Unlimited posix Revision $Revision: 1.70.2.3 $ pspell PSpell Support enabled Reflection Reflection enabled Version $Id: php_reflection.c,v 1.164.2.33 2006/03/29 14:28:42 tony2001 Exp $ session Session Support enabled Registered save handlers files user Registered serializer handlers php php_binary wddx Directive Local Value Master Value session.auto_start Off Off session.bug_compat_42 Off Off session.bug_compat_warn On On session.cache_expire 180 180 session.cache_limiter nocache nocache session.cookie_domain no value no value session.cookie_lifetime 0 0 session.cookie_path / / session.cookie_secure Off Off session.entropy_file no value no value session.entropy_length 0 0 session.gc_divisor 1000 1000 session.gc_maxlifetime 1440 1440 session.gc_probability 1 1 session.hash_bits_per_character 5 5 session.hash_function 0 0 session.name PHPSESSID PHPSESSID session.referer_check no value no value session.save_handler files files session.save_path /var/lib/php/session /var/lib/php/session session.serialize_handler php php session.use_cookies On On session.use_only_cookies Off Off session.use_trans_sid 0 0 shmop shmop support enabled SimpleXML Simplexml support enabled Revision $Revision: 1.151.2.22 $ Schema support enabled snmp NET-SNMP Support enabled NET-SNMP Version 5.3.1 soap Soap Client enabled Soap Server enabled Directive Local Value Master Value soap.wsdl_cache 1 1 soap.wsdl_cache_dir /tmp /tmp soap.wsdl_cache_enabled 1 1 soap.wsdl_cache_limit 5 5 soap.wsdl_cache_ttl 86400 86400 sockets Sockets Support enabled SPL SPL support enabled Interfaces Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject Classes AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, DirectoryIterator, DomainException, EmptyIterator, FilterIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RuntimeException, SimpleXMLIterator, SplFileInfo, SplFileObject, SplObjectStorage, SplTempFileObject, UnderflowException, UnexpectedValueException standard Regex Library Bundled library enabled Dynamic Library Support enabled Path to sendmail /usr/sbin/sendmail -t -i Directive Local Value Master Value assert.active 1 1 assert.bail 0 0 assert.callback no value no value assert.quiet_eval 0 0 assert.warning 1 1 auto_detect_line_endings 0 0 default_socket_timeout 60 60 safe_mode_allowed_env_vars PHP_ PHP_ safe_mode_protected_env_vars LD_LIBRARY_PATH LD_LIBRARY_PATH url_rewriter.tags a=href,area=href,frame=src,input=src,form=fakeentry a=href,area=href,frame=src,input=src,form=fakeentry user_agent no value no value sysvmsg sysvmsg support enabled Revision $Revision: 1.20.2.3 $ tokenizer Tokenizer Support enabled wddx WDDX Support enabled WDDX Session Serializer enabled xml XML Support active XML Namespace Support active libxml2 Version 2.6.26 xmlreader XMLReader enabled xmlwriter XMLWriter enabled xsl XSL enabled libxslt Version 1.1.17 libxslt compiled against libxml Version 2.6.26 EXSLT enabled libexslt Version 1.1.17 zlib ZLib Support enabled Stream Wrapper support compress.zlib:// Stream Filter support zlib.inflate, zlib.deflate Compiled Version 1.2.3 Linked Version 1.2.3 Directive Local Value Master Value zlib.output_compression Off Off zlib.output_compression_level -1 -1 zlib.output_handler no value no value Additional Modules Module Name dbase ionCube Loader sysvsem sysvshm Environment Variable Value REMOTEHOST BSA1 HOSTNAME bsawebserver SHELL /bin/bash TERM vt100 HISTSIZE 1000 KDE_NO_IPV6 1 USER bion KDEDIR /usr MAIL /var/spool/mail/bion PATH /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/bion/bin INPUTRC /etc/inputrc PWD /etc LANG en_US.UTF-8 KDE_IS_PRELINKED 1 SSH_ASKPASS /usr/libexec/openssh/gnome-ssh-askpass SHLVL 3 HOME /root LOGNAME bion CVS_RSH ssh LESSOPEN |/usr/bin/lesspipe.sh %s G_BROKEN_FILENAMES 1 _ /usr/sbin/httpd PHP Variables Variable Value _REQUEST["Check_out"] Check out _REQUEST["PHPSESSID"] dc1o888t62qjul7mo5p15p27e3 _POST["Check_out"] Check out _COOKIE["PHPSESSID"] dc1o888t62qjul7mo5p15p27e3 |
Have you ruled out SELinux?
Try it with setenforce 0 before turning it back on with setenforce 1 |
Tried shutting off SELinux -- no dice
Thanks much billymayday for the suggestion. I had been keeping an eye on SELinux via the log, but this time I tried shutting it off. Even after restarting Apache I still get the same error. How does curl know whether or not it's being called from within Apache? That has to be the key, since the same code that's in the web page works either directly as command-line curl or indirectly as command-line PHP.
|
Quote:
I suggested the SELinux thing because half the time it's the last thing I remember to check (you'd think I'd learn), which would be OK if it were also the first, but it rarely is. You should change your distro in your profile (what's Redhat 8?) |
Quote:
Code:
curl I don't have an answer for why your php program is failing. |
Mea Culpa
MEA CULPA! MEA CULPA! After trying everything else I began to suspect a bug in the Apache code. I patched in the manually edited code that works in command-line and tried it, and suddenly it works in Apache! The problem all along was an extraneous space in the MySQL field containing the URL. The error wasn't that the "HTTPS" protocol is unsupported, it was that " HTTPS" (with leading space) is unsupported. I'm so used to C# where you trim everything nicely before using it that I never looked at the actual string.
SORRY TO BOTHER YOU! THIS THREAD IS CLOSED. You can delete it if you like, since it's unlikely to be of use to anyone. |
++
I just ran into this problem. Thanks for posting the solution! |
All times are GMT -5. The time now is 07:04 AM. |