I'm moving to a new hosting service running on a plesk system. Before I migrate over my old sites, I wanted to test the J5 Alpha on my ISP's new hosting service. Their new service cannot allocate a temporary url, so I have to resolve the IP to the temp domain and add this to my local hosts file.
I expected to see the standard Joomla installation screen
When I ran the url to do the install, the following error came up:-
The server returned a "500 - Whoops, looks like something went wrong."
Having spoken to a Joomla expert after sending him the following error:-
GET /installation/ HTTP/1.0
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/117.0 19.7 K Apache access
2023-08-31 19:30:14 Error 31.170.7.57 AH01071: Got error 'PHP message: PHP Fatal error: Declaration of Joomla\CMS\Log\DelegatingPsrLogger::log($level, Stringable|string $message, array $context = []): void must be compatible with PsrExt\Log\LoggerInterface::log($level, $message, array $context = []) in /var/www/vhosts/scorpiontechnology.ie/joomla5demo.com/libraries/src/Log/DelegatingPsrLogger.php on line 77'
He commented on this and said:
The bit in that error that is suspect is the "PsrExt".
That string doesnt exist in the whole Joomla 5 code base.
The actual Psr\Log\LoggerInterface and the DelegatingPsrLogger.php both have the same compatible method signatures and DelegatingPsrLogger.php has not changed since May 2023 - and nothing important was changed then.
A quick google and It seems PsrExt\Log\LoggerInterface comes from user land PECL packages (which IS a hosting issue) so it might be that somewhere in your hosts PHP configuration (in cPanel PHP Modules?) you can disable things named like PHP Pecl extension PSR ?
I emailed the ISP with his comment and they said:
So basically, it seems the code being deployed is not compatible - perhaps with the latest instance of PSR that is available currently.
Note that we have version 1.2.0 of the PECL PSR component installed - which is the latest one on release, and which runs "PSR-18" - the latest format that has been published as of that version.
It is possible that Joomla 5 might have code that does not suit this formatting requirement or otherwise is using draft formatting or formatting not released as of yet on general use.
The only way around this would be to deploy the website to your own Cloud server etc. and test it there - plus install draf/alpha components, but realistically as it is in Alpha I would suggest waiting until [at least] a Release Candidate and then review the overall.
As a note, it would be very unlikely that the underlying hosting system - Plesk, would not support Joomla 5 when the time comes (for general release) but it would be more likely that certain components would not be available at an Alpha stage - some components may need to be installed that are not as of yet on general release or supported by the vendor/OS etc..
So at the moment, we cannot move forward with j5 installs for testing on the new hosting account due to this error. I hope this helps as part of the alpha build.
Labels |
Removed:
?
|
Labels |
Added:
No Code Attached Yet
|
Hi Brian,
I downloaded the alpha version from the Joomla website.
https://developer.joomla.org/news/902-joomla-5-0-alpha1-test-the-future-of-joomla.html
Regards
Alan
Thats a VERY old version from May
You should download the current alpha which is version 4 (https://developer.joomla.org/news/909-joomla-5-0-alpha-4-your-last-chance-to-add-a-feature.html)
To avoid complications you should remove all the files you currently have from alpha 1 before extracting the alpha4 zip
Hi Brian,
I did a clean install using Alpha 4 and the same error came up with the following issue.
2023-09-03 19:49:16 Error 31.170.7.57 500 GET /installation/index.php HTTP/1.0
2023-09-03 19:49:16 Error 31.170.7.57 404 GET /favicon.ico HTTP/1.0
2023-09-03 19:49:16 Error 31.170.7.57 AH01071: Got error 'PHP message: PHP Fatal error: Declaration of Joomla\CMS\Log\DelegatingPsrLogger::log($level, Stringable|string $message, array $context = []): void must be compatible with PsrExt\Log\LoggerInterface::log($level, $message, array $context = []) in /var/www/vhosts/[domainname}/joomla5demo.com/libraries/src/Log/DelegatingPsrLogger.php on line 77'
Regards
Alan
So you have a a file path issue
Hi Brain,
I agree that this could be a problem. The way they have setup the new Plesk hosting system and recommending that customers use a hosts file, does not sit well with me and this could be one of the issues as to why J5 is not even loading the installation page due to a path issue. however, the splash error 500 screen does show up, so it is seeing the directory.
So I went back to my old hosting account and this DOES allow for temp URL's. J4 works fine on this system. So, I did a clean install and tried the process again, but again, the 500 server error came up:-
http://d1673633-147525.blacknighthosting.com/installation/index.php
Now this old hosting account only supports MySQL5 (they have php 8.1 installed), but I would expect the installation screen to come up at least.
So it's a bit of a mystery as to why both hosting packages are not loading J5. The only other issue is that website caching is in place and
maybe when I try again in the morning, it will work, i don't know?
Regards
Alan
Hi,
I've now installed Joomla 5 Beta 1 but experiencing the same issue. :-(
Regards
Alan
The error that is coming up also says that it is an "Apache Error".
2023-09-04 16:44:39 Error 31.170.7.57 AH01071: Got error 'PHP message: PHP Fatal error: Declaration of Joomla\CMS\Log\DelegatingPsrLogger::log($level, Stringable|string $message, array $context = []): void must be compatible with PsrExt\Log\LoggerInterface::log($level, $message, array $context = []) in /var/www/vhosts/scorpiontechnology.ie/joomla5demo.com/libraries/src/Log/DelegatingPsrLogger.php on line 77' Apache error
If that helps to solve the issue.
Regards
Alan
Hi,
I've now added a full domain rather than a temp URL to make sure that there is no path issue, but I'm still getting the
500 server error issue.
Regards
Alan
Hi Brian,
After getting the consultant to have a look at the php_info on my ISP's server, this is what he feels is the issue:-
PSR is a standard - correct - but not one that should be installed at a SERVER LEVEL - it should be up to individual projects on a server to implement the PSR Standards and not for a server admin to blindly load code into the stack without thought
This server is also two versions of PHP out of date, running PHP 8.1.21 and not 8.1.23 released on 31st August...
The correct link they should have sent you - that would be more helpful is https://www.php-fig.org/psr/psr-3/ which is the definition of the Logger Interface that projects implement. If you click the Meta Document on the right you get to https://www.php-fig.org/psr/psr-3/meta/ which has a whole section on Errata - Type Additions:
As you can read there, if a project (like joomla) specifies a minimum PHP version of 8.0.0 or later then Implementers MAY add return types to their own packages at their discretion.
What your webhost is doing is AUTOMATICALLY LOADING the older version of the psr/log packages from PECL which are compatible with PHP 7 and not allowing you - the customer - to use MORE MODERN IMPLEMENTATIONS..
So based on this theory, it is nothing to do with Joomla 5, but got to do with the version of PHP running on my ISP's server.
Regards
Alan
thank you for the feedback
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2023-09-06 16:56:27 |
Closed_By | ⇒ | alikon |
Almost certainly everything your "expert" and your "isp" have said is wrong.
Question 1
Where did you download the alpha from? This will almost certainly let me solve your problem