S
S
Sergey2017-08-15 19:01:55
PHP
Sergey, 2017-08-15 19:01:55

How to defeat modx revo on php7?

I have a web server
(# uname -a FreeBSD xxx.local 11.0-RELEASE-p1 FreeBSD 11.0-RELEASE-p1 #0 r306420: Thu Sep 29 03:40:55 UTC 2016 [email protected]: /usr/obj/usr/src/sys/GENERIC i386),
which, according to the requirements, should have php version 7. And the latest ModX Revolution should be spinning. After successful installation of the engine, it asks for a password to enter the admin panel. But after login - blank page in Firefox or 500 error in Chrome. Turned on the output of errors in the page:

Fatal error: Uncaught Error: Call to a member function get() on null in /usr/local/www/apache24/data/core/model/modx/processors/security/login.class.php:134 Stack trace: #0 /usr/local/www/apache24/data/core/model/modx/processors/security/login.class.php(209): modSecurityLoginProcessor->checkIsBlocked() #1 /usr/local/www/apache24/data/core/model/modx/processors/security/login.class.php(383): modSecurityLoginProcessor->beforeLogin() #2 /usr/local/www/apache24/data/core/model/modx/modprocessor.class.php(173): modSecurityLoginProcessor->process() #3 /usr/local/www/apache24/data/core/model/modx/modx.class.php(1706): modProcessor->run() #4 /usr/local/www/apache24/data/manager/controllers/default/security/login.class.php(189): modX->runProcessor('security/login', Array) #5 /usr/local/www/apache24/data/manager/controllers/default/security/login.class.php(157): SecurityLoginManagerController->handleLogin() #6 /usr/local/www/apache24/data/manager/controllers/default/security/login.class.php(40): SecurityLoginManagerController->hand in /usr/local/www/apache24/data/core/model/modx/processors/security/login.class.php on line 134

It was useful to look at the logs of ModX itself:
cat error.log
[2017-08-15 18:34:41] (ERROR @ /usr/local/www/apache24/data/core/model/modx/modx.class.php : 1708) Processor core/config/config.inc.phpsystem/registry/register/read.php does not exist; Array
(
)

[2017-08-15 18:36:22] (ERROR @ /usr/local/www/apache24/data/core/model/modx/modmanagerresponse.class.php : 190) PHP warning: Parameter 1 to modManagerController::getInstance() expected to be a reference, value given

According to the advice on the Internet, it was useful to edit the /usr/local/www/apache24/data/core/model/modx/modmanagerresponse.class.php file, but the "&" symbol was already there, where it should be according to the instructions. I substituted different processors according to the same instructions, tried to clean the cache folder - there was no result. What else to try?

Answer the question

In order to leave comments, you need to log in

3 answer(s)
P
Pavel Aleksandrov, 2017-11-13
@inblank

See database encoding.
If the mysql database has latin1 encoding , which is often set by default, and you chose utf8 when installing modx , then when creating a new user, modx will not be able to insert Russian text, it will write an error to the log and silently (without a message in the web interface) will complete installation. Well, when you try to log in, there will be a PHP Fatal Error. Change the encoding on the base: And repeat the installation.

F
Froggyweb, 2017-08-15
@Froggyweb

Modx since version 2.5 works fine on php7. See server settings and file folder permissions

A
Alexander Vyalykh, 2017-09-08
@alvcode

Try opening the admin panel like this: site.ru/manager/?a=security/profile. If it works, then remove the RSS feed in the security notification settings.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question