Invision Community 4: SEO, prepare for v5 and dormant account notifications By Matt Monday at 02:04 PM
stuclark Posted January 10 Posted January 10 When trying to upgrade from 4.7.0 to 4.7.14 (yes, in one step), the upgrade fails after the file extraction step and displays a blank page when trying to load the "admin/?app=core&module=system&controller=upgrade&check=1" URL. The database and site are still in existence and the admin dashboard still works; but there is a lock applied somewhere which results in the front end displaying an error of "We're sorry, this web site is unavailable while an update is in progress. You can try again by clicking the button below, or try again later. " Trying to restart the upgrade from admin/upgrade displays another blank page after logging in successfully. The only way to bring the site back online I've found is to restore the physical files *AND* complete database, which then releases the upgrade lock and makes the front end available again. However, this obviously reverts the site to 4.7.0
Stuart Silvester Posted January 10 Posted January 10 A blank page is typically a PHP error. Have a look in your servers PHP Error log for any errors that occurred around the time you tried to upgrade SeNioR- 1
stuclark Posted January 10 Author Posted January 10 55 minutes ago, Stuart Silvester said: A blank page is typically a PHP error. Have a look in your servers PHP Error log for any errors that occurred around the time you tried to upgrade Sort of - PHP was erroring, but not becuase of a server setting (apparently) Here's the PHP error in full: Fatal error: Uncaught Error: Call to undefined function IPS\Http\Request\curl_multi_exec() in <PATH_TO_WEBSITE>\system\Http\Request\Curl.php:442 Stack trace: #0 <PATH_TO_WEBSITE>\system\Http\Request\Curl.php(496): IPS\Http\Request\_Curl->_executeMh() #1 <PATH_TO_WEBSITE>\system\Http\Request\Curl.php(321): IPS\Http\Request\_Curl->_executeAndFollowRedirects('POST', Array) #2 <PATH_TO_WEBSITE>\init.php(1116): IPS\Http\Request\_Curl->post(Array) #3 <PATH_TO_WEBSITE>\init.php(1050): IPS\IPS::reportExceptionToIPS(Object(Error)) #4 [internal function]: IPS\IPS::exceptionHandler(Object(Error)) #5 {main} thrown in <PATH_TO_WEBSITE>\system\Http\Request\Curl.php on line 442
Stuart Silvester Posted January 10 Posted January 10 That might just be a side-effect of the actual issue (this is where it's trying to report the exception to us), but check that your server has `curl_multi_exec()` available and that it isn't listed in the `disabled_functions` section of the PHP configuration.
Randy Calvert Posted January 10 Posted January 10 You might want to make sure this new version of PHP has all the system requirements installed.
stuclark Posted January 10 Author Posted January 10 (edited) I've double checked that cURL is enabled and also modified the above script to check for the curl_multi_exec() function, yet I still get the same error: Fatal error: Uncaught Error: Call to undefined function IPS\Http\Request\curl_multi_exec() in <PATH_TO_WEBSITE>\system\Http\Request\Curl.php:442 Stack trace: #0 <PATH_TO_WEBSITE>\system\Http\Request\Curl.php(496): IPS\Http\Request\_Curl->_executeMh() #1 <PATH_TO_WEBSITE>\system\Http\Request\Curl.php(321): IPS\Http\Request\_Curl->_executeAndFollowRedirects('POST', Array) #2 <PATH_TO_WEBSITE>\init.php(1116): IPS\Http\Request\_Curl->post(Array) #3 <PATH_TO_WEBSITE>\init.php(1050): IPS\IPS::reportExceptionToIPS(Object(Error)) #4 [internal function]: IPS\IPS::exceptionHandler(Object(Error)) #5 {main} thrown in <PATH_TO_WEBSITE>\system\Http\Request\Curl.php on line 442 It should be noted I am running this on Windows2019 using Apache 2.4.58 and PHP 8.2.3 PHP info output for cURL shows: curl cURL support enabled cURL Information 7.85.0 Age 9 Features AsynchDNS Yes CharConv No Debug No GSS-Negotiate No IDN Yes IPv6 Yes krb4 No Largefile Yes libz Yes NTLM Yes NTLMWB No SPNEGO Yes SSL Yes SSPI Yes TLS-SRP No HTTP2 Yes GSSAPI No KERBEROS5 Yes UNIX_SOCKETS Yes PSL No HTTPS_PROXY Yes MULTI_SSL No BROTLI No ALTSVC Yes HTTP3 No UNICODE No ZSTD No HSTS Yes GSASL No Protocols dict, file, ftp, ftps, gopher, gophers, http, https, imap, imaps, ldap, ldaps, mqtt, pop3, pop3s, rtsp, scp, sftp, smb, smbs, smtp, smtps, telnet, tftp Host x86_64-pc-win32 SSL Version OpenSSL/3.0.8 ZLib Version 1.2.12 libSSH Version libssh2/1.10.0 Directive Local Value Master Value curl.cainfo no value no value (updated ips4 script attached showing the function I'm checking for) ips4-new.php Edited January 10 by stuclark
Jim M Posted January 10 Posted January 10 3 minutes ago, stuclark said: It should be noted I am running this on Windows2019 using Apache 2.4.58 and PHP 8.2.3 Please downgrade to PHP 8.1. PHP 8.2 is not supported.
stuclark Posted January 10 Author Posted January 10 17 minutes ago, Jim M said: Please downgrade to PHP 8.1. PHP 8.2 is not supported. I'm getting exactly the same error on PHP 8.1.27 - exactly the same error message
stuclark Posted January 11 Author Posted January 11 Does anyone have any further ideas on this issue? My server is saying all PHP pre-requisites are met, yet the same issue exists on PHP8.1 and PHP 8.2
teraßyte Posted January 11 Posted January 11 Either curl_multi_exec() is disabled by the hosting for all PHP versions, or the package was compiled without it(?). In any case, it's something you should check directly with the hosting. I had a client with the same issue before. Their hosting had disabled the function and refused to enable it. They ended up changing hosting as a last resort. 🤷♂️
Marc Posted January 11 Posted January 11 Unfortunately, as mentioned, it's a hosting issue there. Its your hosting who are likely to need to resolve this
stuclark Posted January 11 Author Posted January 11 I eventually found the issue - turns out there's been a difference in the build of PHP on Windows depending upon which version of the VSC runtimes they were built against. One version specifically had multi_exec disabled 🤬
Forea Posted January 12 Posted January 12 Hi from Spain. We have that when try to fix some file as recommended Invision: Update in progress We're sorry, this web site is unavailable while an update is in progress. You can try again by clicking the button below, or try again later. Try again Site Owner This message means an upgrade is in progress. If this is not correct, try visiting the upgrade process again (usually /admin/upgrade) and choose either continue or restart. If the upgrade shows nothing to upgrade, visit the AdminCP and run the Support tool. You can also contact Invision Community support for assistance. How can we fix that? Thanks.
Forea Posted January 12 Posted January 12 6 minutes ago, Forea said: Hi from Spain. We have that when try to fix some file as recommended Invision: Update in progress We're sorry, this web site is unavailable while an update is in progress. You can try again by clicking the button below, or try again later. Try again Site Owner This message means an upgrade is in progress. If this is not correct, try visiting the upgrade process again (usually /admin/upgrade) and choose either continue or restart. If the upgrade shows nothing to upgrade, visit the AdminCP and run the Support tool. You can also contact Invision Community support for assistance. How can we fix that? Thanks. Fixed. Sorry and thanks.
Recommended Posts