U14 w/ ispconfig 3.0.5.4p8 not working after adding additional php versions

Discussion in 'Server Operation' started by Nap, Oct 23, 2018.

  1. Nap

    Nap Member

    [10K Char limit needs (1) an indicator how many char you currently have, or (2) be increased so a meaningful log extract can be shown.]

    Hi,
    I just installed php5.6, 7.0, & 7.1 on my server (cli & cgi for each of them). The install went though smoothly, and I was able to add the new php versions to the "Additional PHP Versions" page. However, when I clicked on the "Site" icon (to set the default php for a particular website), I got a csrf error in a red box (which repeated a few times as I clicked things). My Apache error log recorded the following warning for each click:

    Code:
    ./apache2/error.log:[Tue Oct 23 18:15:56.579555 2018] [fcgid:warn] [pid 17617] [client x.x.x.x:64406] mod_fcgid: stderr: PHP Warning:  Illegal string offset '_csrf_id' in /usr/local/ispconfig/interface/lib/classes/tform.inc.php on line 184, referer: https://mysite.com/index.php
    
    I tried restarting Apache and eventually rebooted my server to see if that would fix the problem.

    After logging into my Admin account, I clicked the "Home" icon, and the browser showed me the normal screen layout (toolbar across the top, latest news panel on the left, and a summary in the center with various toolbar buttons). Some of the Control Panel items work (Help, Monitor, Tools, & VServer), but System, Client, DNS, Email, & Sites are broken.

    Clicking any of the broken Control Panel buttons shows me the basic layout (toolbar across the top, left panel with links for that function) but the center section remains in the same state it was in before I clicked the link (i.e. it is not updated). The only thing that does happen is that I get the overlaid "Loading" window showing for a few moments, indicating that ISPCONFIG was trying to do something.

    I suspect this has something to do with php7.1-cgi being the default version (as I have already done this on another backup server and it worked fine with php7.0-cgi). I don't use php-fpm, though I have php7.1-fpm installed.

    Any quick tips on how to fix this, while I continue to try to work this out? I already tried changing the alternatives for php, but that didn't help.


    An excerpt from my Apache error log file is attached. Here are some lines:
    Code:
    [Tue Oct 23 19:01:33.013676 2018] [ssl:warn] [pid 7726] AH01909: RSA certificate configured for mydomain.com:443 does NOT include an ID which matches the server name
    [Tue Oct 23 19:01:33.022355 2018] [ssl:warn] [pid 7726] AH01909: RSA certificate configured for hostname.mydomain.com  does NOT include an ID which matches the server name
    [Tue Oct 23 19:01:33.022555 2018] [ssl:warn] [pid 7726] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
    [Tue Oct 23 19:01:33.022587 2018] [:notice] [pid 7726] ModSecurity for Apache/2.7.7 (http://www.modsecurity.org/) configured.
    [Tue Oct 23 19:01:33.023727 2018] [suexec:notice] [pid 7726] AH01232: suEXEC mechanism enabled (wrapper: /usr/lib/apache2/suexec)
    [Tue Oct 23 19:01:33.063767 2018] [:notice] [pid 7732] FastCGI: process manager initialized (pid 7732)
    [Tue Oct 23 19:01:34.003683 2018] [ssl:warn] [pid 7728] AH01909: RSA certificate configured for mydomain.com:443 does NOT include an ID which matches the server name
    [Tue Oct 23 19:01:34.006783 2018] [ssl:warn] [pid 7728] AH01909: RSA certificate configured for hostname.mydomain.com  does NOT include an ID which matches the server name
    [Tue Oct 23 19:01:34.006973 2018] [ssl:warn] [pid 7728] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
    [Tue Oct 23 19:01:34.065634 2018] [:notice] [pid 7728] mod_python: Creating 8 session mutexes based on 60 max processes and 0 max threads.
    [Tue Oct 23 19:01:34.065668 2018] [:notice] [pid 7728] mod_python: using mutex_directory /tmp
    [Tue Oct 23 19:01:34.101279 2018] [mpm_prefork:notice] [pid 7728] AH00163: Apache/2.4.7 (Ubuntu) mod_fastcgi/mod_fastcgi-SNAP-0910052141 OpenSSL/1.0.1f mod_fcgid/2.3.9 mod_python/3.3.1 Python/2.7.6 configured -- resuming normal operations
    [Tue Oct 23 19:01:43.027298 2018] [fcgid:warn] [pid 7748] [client w.x.y.z:49657] mod_fcgid: stderr: PHP Fatal error:  Uncaught Error: [] operator not supported for strings in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php:138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:01:43.027308 2018] [fcgid:warn] [pid 7748] [client w.x.y.z:49657] mod_fcgid: stderr: Stack trace:, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:01:43.027321 2018] [fcgid:warn] [pid 7748] [client w.x.y.z:49657] mod_fcgid: stderr: #0 /usr/local/ispconfig/interface/web/sites/web_domain_list.php(57): listform_actions->onLoad(), referer: https://mydomain.com /index.php
    [Tue Oct 23 19:01:43.027328 2018] [fcgid:warn] [pid 7748] [client w.x.y.z:49657] mod_fcgid: stderr: #1 {main}, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:01:43.027333 2018] [fcgid:warn] [pid 7748] [client w.x.y.z:49657] mod_fcgid: stderr:   thrown in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php on line 138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:08:29.598607 2018] [fcgid:warn] [pid 7755] [client w.x.y.z:30966] mod_fcgid: stderr: PHP Warning:  Declaration of db::query($queryString) should be compatible with mysqli::query($query, $resultmode = NULL) in /usr/local/ispconfig/interface/lib/classes/db_mysql.inc.php on line 0, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:30:17.058625 2018] [access_compat:error] [pid 7744] [client 127.0.0.1:60544] AH01797: client denied by server configuration: /var/www/
    [Tue Oct 23 19:30:24.466926 2018] [fcgid:warn] [pid 7740] mod_fcgid: process 10405 graceful kill fail, sending SIGKILL
    [Tue Oct 23 19:37:00.080384 2018] [fcgid:warn] [pid 7760] [client w.x.y.z:5724] mod_fcgid: stderr: PHP Fatal error:  Uncaught Error: [] operator not supported for strings in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php:138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:02.809217 2018] [fcgid:warn] [pid 7759] [client w.x.y.z:23858] mod_fcgid: stderr: PHP Fatal error:  Uncaught Error: [] operator not supported for strings in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php:138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:02.809221 2018] [fcgid:warn] [pid 7759] [client w.x.y.z:23858] mod_fcgid: stderr: Stack trace:, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:03.388982 2018] [fcgid:warn] [pid 11936] [client w.x.y.z:58961] mod_fcgid: stderr: PHP Warning:  Declaration of db::query($queryString) should be compatible with mysqli::query($query, $resultmode = NULL) in /usr/local/ispconfig/interface/lib/classes/db_mysql.inc.php on line 0, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:12.763500 2018] [fcgid:warn] [pid 11937] [client w.x.y.z:26207] mod_fcgid: stderr: PHP Fatal error:  Uncaught Error: [] operator not supported for strings in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php:138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:12.763504 2018] [fcgid:warn] [pid 11937] [client w.x.y.z:26207] mod_fcgid: stderr: Stack trace:, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:12.763516 2018] [fcgid:warn] [pid 11937] [client w.x.y.z:26207] mod_fcgid: stderr: #0 /usr/local/ispconfig/interface/web/mail/mail_domain_list.php(25): listform_actions->onLoad(), referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:12.763520 2018] [fcgid:warn] [pid 11937] [client w.x.y.z:26207] mod_fcgid: stderr: #1 {main}, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:12.763523 2018] [fcgid:warn] [pid 11937] [client w.x.y.z:26207] mod_fcgid: stderr:   thrown in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php on line 138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:19.226083 2018] [fcgid:warn] [pid 11938] [client w.x.y.z:37725] mod_fcgid: stderr: PHP Warning:  Illegal string offset 'state' in /usr/local/ispconfig/interface/web/monitor/show_sys_state.php on line 303, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:19.226087 2018] [fcgid:warn] [pid 11938] [client w.x.y.z:37725] mod_fcgid: stderr: PHP Warning:  Illegal string offset 'server_name' in /usr/local/ispconfig/interface/web/monitor/show_sys_state.php on line 304, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:19.226129 2018] [fcgid:warn] [pid 11938] [client w.x.y.z:37725] mod_fcgid: stderr: PHP Warning:  Cannot assign an empty string to a string offset in /usr/local/ispconfig/interface/web/monitor/show_sys_state.php on line 308, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:19.226133 2018] [fcgid:warn] [pid 11938] [client w.x.y.z:37725] mod_fcgid: stderr: PHP Warning:  Illegal string offset 'html_verbose' in /usr/local/ispconfig/interface/web/monitor/show_sys_state.php on line 58, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:25.434526 2018] [fcgid:warn] [pid 11938] [client w.x.y.z:37725] mod_fcgid: stderr: PHP Fatal error:  Uncaught Error: [] operator not supported for strings in /usr/local/ispconfig/interface/lib/classes/listform_actions.inc.php:138, referer: https://mydomain.com /index.php
    [Tue Oct 23 19:37:26.027570 2018] [fcgid:warn] [pid 7760] [client w.x.y.z:27512] mod_fcgid: stderr: PHP Warning:  Declaration of db::query($queryString) should be compatible with mysqli::query($query, $resultmode = NULL) in /usr/local/ispconfig/interface/lib/classes/db_mysql.inc.php on line 0, referer: https://mydomain.com /index.php
    
     

    Attached Files:

  2. Taleman

    Taleman Well-Known Member HowtoForge Supporter

    If you run Ubuntu 14.04 as OS, ISPConfig runs on the default PHP version of that OS. Find out which PHP it is, and set that to default with update-alternatives.
     
  3. Nap

    Nap Member

    @Taleman: Thanks. I tried that already, and from the command-line it ran 5.5.9. But update-alternatives does not update all the PHP related symlinks in /etc/alternatives:

    Code:
    lrwxrwxrwx   1 root root    16 Oct 23 06:15 phar -> /usr/bin/phar7.1*
    lrwxrwxrwx   1 root root    32 Oct 23 06:15 phar.1.gz -> /usr/share/man/man1/phar7.1.1.gz
    lrwxrwxrwx   1 root root    21 Oct 23 06:15 phar.phar -> /usr/bin/phar.phar7.1*
    lrwxrwxrwx   1 root root    37 Oct 23 06:15 phar.phar.1.gz -> /usr/share/man/man1/phar.phar7.1.1.gz
    lrwxrwxrwx   1 root root    13 Oct 23 23:39 php -> /usr/bin/php5*
    lrwxrwxrwx   1 root root    29 Oct 23 23:39 php.1.gz -> /usr/share/man/man1/php5.1.gz
    lrwxrwxrwx   1 root root    19 Oct 23 07:37 php-cgi -> /usr/bin/php-cgi7.1*
    lrwxrwxrwx   1 root root    35 Oct 23 07:37 php-cgi.1.gz -> /usr/share/man/man1/php-cgi7.1.1.gz
    lrwxrwxrwx   1 root root    23 Oct 23 07:37 php-cgi-bin -> /usr/lib/cgi-bin/php7.1*
    lrwxrwxrwx   1 root root    22 Oct 23 07:37 php-config -> /usr/bin/php-config7.1*
    lrwxrwxrwx   1 root root    38 Oct 23 07:37 php-config.1.gz -> /usr/share/man/man1/php-config7.1.1.gz
    lrwxrwxrwx   1 root root    18 Oct 23 07:37 phpize -> /usr/bin/phpize7.1*
    lrwxrwxrwx   1 root root    34 Oct 23 07:37 phpize.1.gz -> /usr/share/man/man1/phpize7.1.1.gz
    
    (After running update-alternatives --config php and choosing php5.)

    I'll keep going down that path as I also think that's where the solution is.
     
  4. Nap

    Nap Member

    Ok, manually adjusting the following symlinks in /etc/alternatives has fixed the problem:
    Code:
    	ln -sf /usr/bin/php5-cgi php-cgi
    	ln -sf /usr/share/man/man1/php-cgi.1.gz php-cgi.1.gz
    	ln -sf /usr/lib/cgi-bin/php5 php-cgi-bin
    
     

Share This Page