SIDEBAR
»
S
I
D
E
B
A
R
«
Uberspace PHP 7.4 to 8.0 migration brakes WordPress <5.3
Jan 10th, 2023 by miki

So, uberspace.de (which hosts this site at the time of writing) announced timely on 2022-10-27 that instances (aka. asteroids) using PHP 7.4 will automatically upgrade to PHP 8.0 on 2022-11-29 due to 7.4 going out of active support on 2022-11-28;

Ahoy,

You have selected PHP 7.4 as the active version on your Asteroid. Support for this version will end on November 28, 2022. For your and our security we will upgrade your account to PHP 8.0 on November 29, 2022.

Usually you will not notice anything and there is nothing else to do, because most tools and programs like WordPress and Nextcloud have been working with PHP 8.0 for a long time.
If you want to be on the safe side, please check in advance if your tools are up to date.

By the way: You can also set your PHP version yourself. You can find all the information you need about PHP in our manual: https://manual.uberspace.de/lang-php/#change-version

For questions and feedback please contact our support team:
https://uberspace.de/support/

Best regards
Boni, Janto, Kim, Leah, luto, Moritz, Nati, Nico, Noah, Pelzi, Mo, Sabrina & Jonas

This went under my radar on migration day, and due to the site still being operational I did not think it caused any issues.

However, on 2023-01-09 the site suddenly went offline and investigating logs, PHP errors were thrown in one of the main WordPress includes;

[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “[09-Jan-2023 18:41:58 UTC] PHP Fatal error: Uncaught Error: Call to undefined function get_magic_quotes_gpc() in <redacted>/wp-includes/load.php:651”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “Stack trace:”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “#0 <redacted>/wp-settings.php(333): wp_magic_quotes()”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “#1 <redacted>/wp-config.php(39): require_once(‘<redacted>’)”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “#2 <redacted>/wp-load.php(37): require_once(‘<redacted>’)”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “#3 <redacted>/xmlrpc.php(29): include(‘<redacted>/’)”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: “#4 {main}”
[09-Jan-2023 19:41:58] WARNING: [pool www] child 19454 said into stderr: ” thrown in <redacted>/wp-includes/load.php on line 651″

This is due to the PHP function get_magic_quotes_gpc(), which is already deprecated in 7.4, being completely removed in 8.0. However in WordPress before 5.3 (released 2019-11-12, see announcement or further details) this function is assumed to be present. The location throwing above is the first location in the code path hitting the use of this;

Function wp_magic_quotes() of load.php:

The quick fix to this was downgrading PHP by following the guide mentioned above, which was surprinsingly possible. However, this should only be regarded as a temporary solution as PHP out of security support is not a good solution. As the guide does not mention when PHP 7.4 is going out of support and being completely removed from uberspace, I tried pinging their support in their fediverse account, no resposnse as of ending this write-up.

»  Substance:WordPress   »  Style:Ahren Ahimsa
© 2023 Mikkel Kirkgaard Nielsen, contents CC BY-SA 4.0