Get the most out of your Centmin Mod LEMP stack
Become a Member

PHP PHP 8.1.0 GA Stable Release!

Discussion in 'Nginx and PHP-FPM news & discussions' started by eva2000, Nov 24, 2021.

  1. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    PHP 8.1.0 GA stable release is available now. Official announcement will be coming soon but I can see it's already released on PHP official Github release page at Release php-8.1.0 · php/php-src and that is where Centmin Mod's PHP-FPM installs get their PHP versions from. I've posted PHP 8.1.0 vs 8.0.13 vs 7.4.26 vs 7.3.33 vs 7.2.34 benchmarks as well.

    This means Centmin Mod 123.09beta01 and higher users can upgrade and test PHP 8.1.0 GA stable release right now. All you need to do is run cmupdate command within SSH for your Centmin Mod server to update it to support PHP 8.1.0 GA stable release and then run centmin.sh menu option 5 to update PHP by specifying the PHP version = 8.1.0.

    If you don't do cmupdate, then specifying PHP version 8.1.0 actually will pull the master branch of PHP via Git instead which is not what you want. So make sure to run cmupdate before centmin.sh menu option 5 ;)

    Code (Text):
    php -v
    PHP 8.1.0 (cli) (built: Nov 24 2021 09:36:24) (NTS)
    Copyright (c) The PHP Group
    Zend Engine v4.1.0, Copyright (c) Zend Technologies
        with Zend OPcache v8.1.0, Copyright (c), by Zend Technologies
    

    Code (Text):
    php-config
    Usage: /usr/local/bin/php-config [OPTION]
    Options:
      --prefix            [/usr/local]
      --includes          [-I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib]
      --ldflags           [ -L/usr/local/lib64]
      --libs              [-lcrypt  -lc-client  -ltidy -lresolv -lncurses -laspell -lpspell -lrt -lldap -llber -lstdc++ -lcrypt -lpam -lgmp -lbz2 -lutil -lrt -lm -ldl  -lsystemd -lxml2 -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lssl -lcrypto -lsqlite3 -lz -lcurl -lxml2 -lenchant -lgmodule-2.0 -lglib-2.0 -lffi -lssl -lcrypto -lz -lpng15 -lwebp -ljpeg -lXpm -lX11 -lfreetype -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lssl -lcrypto -licuio -licui18n -licuuc -licudata -lonig -lsqlite3 -ledit -ltinfo -lxml2 -lnetsnmp -lssl -lssl -lcrypto -lm -lxml2 -lsodium -largon2 -lrt -ldl -lxml2 -lxml2 -lxml2 -lxslt -lxml2 -lexslt -lxslt -lxml2 -lzip -lz -lssl -lcrypto -lcrypt ]
      --extension-dir     [/usr/local/lib/php/extensions/no-debug-non-zts-20210902]
      --include-dir       [/usr/local/include/php]
      --man-dir           [/usr/local/php/man]
      --php-binary        [/usr/local/bin/php]
      --php-sapis         [ cli embed fpm phpdbg cgi]
      --ini-path          [/usr/local/lib]
      --ini-dir           [/etc/centminmod/php.d]
      --configure-options [--enable-fpm --enable-opcache --enable-intl --enable-pcntl --with-mcrypt --with-snmp --enable-embed=shared --with-mhash --with-zlib --with-gettext --enable-exif --with-zip --with-libzip --with-bz2 --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --with-mysql-sock=/var/lib/mysql/mysql.sock --with-curl --enable-gd --with-xmlrpc --enable-bcmath --enable-calendar --enable-ftp --enable-gd-native-ttf --with-freetype --with-jpeg --with-png-dir=/usr --with-xpm --with-webp --with-t1lib=/usr --enable-shmop --with-pear --enable-mbstring --with-openssl --with-mysql=mysqlnd --with-libdir=lib64 --with-mysqli=mysqlnd --enable-pdo --with-pdo-sqlite --with-pdo-mysql=mysqlnd --enable-inline-optimization --with-imap --with-imap-ssl --with-kerberos --with-readline --with-libedit --with-gmp --with-pspell --with-tidy --with-enchant --with-fpm-user=nginx --with-fpm-group=nginx --with-ldap --with-ldap-sasl --with-password-argon2=/usr/local --with-sodium=/usr/local --with-config-file-scan-dir=/etc/centminmod/php.d --with-fpm-systemd --with-ffi --with-xsl PKG_CONFIG_PATH=/opt/rh/devtoolset-11/root/usr/lib64/pkgconfig:/opt/rh/devtoolset-11/root/usr/lib64/pkgconfig ICU_CFLAGS=-I/usr/include ICU_LIBS=-L/usr/lib64 -licuio -licui18n -licuuc -licudata LIBSODIUM_CFLAGS=-I/usr/local/include LIBSODIUM_LIBS=-L/usr/local/lib64 -lsodium LIBZIP_CFLAGS=-I/usr/local/include LIBZIP_LIBS=-L/usr/local/lib64 -lzip]
      --version           [8.1.0]
      --vernum            [80100]
    

    Code (Text):
    php --ini
    Configuration File (php.ini) Path: /usr/local/lib
    Loaded Configuration File:         /usr/local/lib/php.ini
    Scan for additional .ini files in: /etc/centminmod/php.d
    Additional .ini files parsed:      /etc/centminmod/php.d/a_customphp.ini,
    /etc/centminmod/php.d/curlcainfo.ini,
    /etc/centminmod/php.d/geoip.ini,
    /etc/centminmod/php.d/igbinary.ini,
    /etc/centminmod/php.d/imagick.ini,
    /etc/centminmod/php.d/mailparse.ini,
    /etc/centminmod/php.d/maxminddb.ini,
    /etc/centminmod/php.d/mcrypt.ini,
    /etc/centminmod/php.d/memcache.ini,
    /etc/centminmod/php.d/memcached.ini,
    /etc/centminmod/php.d/mysqlnd.ini,
    /etc/centminmod/php.d/preload.ini,
    /etc/centminmod/php.d/redis.ini,
    /etc/centminmod/php.d/timezonedb.ini,
    /etc/centminmod/php.d/zendopcache.ini,
    



    Also here's the PHP 8.1 branch bug tracker to check what bugs are being reported.
     
  2. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    Running cmupdate command

    Code (Text):
    cmupdate
    Saved working directory and index state WIP on 123.09beta01: e55c588 update 
    From https://github.com/centminmod/centminmod
       e55c588..16c73c9  123.09beta01 -> origin/123.09beta01
    Updating e55c588..16c73c9
    Fast-forward
     centmin-cli.sh         | 2 +-
     centmin.sh             | 2 +-
     config/motd/dmotd.sh   | 2 +-
     inc/phpng_download.inc | 2 +-
     4 files changed, 4 insertions(+), 4 deletions(-)
    


    centmin.sh menu option 5 run to upgrade to PHP 8.1.0 GA Stable release

    Code (Text):
    --------------------------------------------------------
        Centmin Mod Menu 123.09beta01 centminmod.com   
    --------------------------------------------------------
    1).  Centmin Install
    2).  Add Nginx vhost domain
    3).  NSD setup domain name DNS
    4).  Nginx Upgrade / Downgrade
    5).  PHP Upgrade / Downgrade
    6).  XCache Re-install
    7).  APC Cache Re-install
    8).  XCache Install
    9).  APC Cache Install
    10). Memcached Server Re-install
    11). MariaDB MySQL Upgrade & Management
    12). Zend OpCache Install/Re-install
    13). Install/Reinstall Redis PHP Extension
    14). SELinux disable
    15). Install/Reinstall ImagicK PHP Extension
    16). Change SSHD Port Number
    17). Multi-thread compression: zstd,pigz,pbzip2,lbzip2
    18). Suhosin PHP Extension install
    19). Install FFMPEG and FFMPEG PHP Extension
    20). NSD Install/Re-Install
    21). Data Transfer (TBA)
    22). Add Wordpress Nginx vhost + Cache Plugin
    23). Update Centmin Mod Code Base
    24). Exit
    --------------------------------------------------------
    Enter option [ 1 - 24 ] 5
    --------------------------------------------------------
    

    Code (Text):
    PHP Upgrade/Downgrade - Would you like to continue? [y/n] y
    
    ----------------------------------------------------------------
    Install which version of PHP? (i.e. 7.3.33, 7.4.26, 8.0.13, 8.1.0, NGDEBUG)
    PHP 7.x/7.1.x/7.2.x/7.3.x is GA Stable but still may have broken PHP extensions.
    NGDEBUG is PHP 8.1 dev builds minus incompatible PHP extensions
    ----------------------------------------------------------------
    
    Current PHP Version: 8.1.0RC6
    
    Enter PHP Version number you want to upgrade/downgrade to: 8.1.0
    
    Do you still want to continue? [y/n] y
    
    ----------------------------------------------------------------
    existing php.ini will be backed up at /usr/local/lib/php.ini-oldversion_241121-093215
    ----------------------------------------------------------------
    
    -----------------------------------------------------------------------------------------
    Detected PHP 8.1 branch.
    You can compile Zend OPcache (Zend Optimizer Plus+) support
    as an alternative to using APC Cache or Xcache cache.
    But Zend OPcache only provides PHP opcode cache and
    DOESN'T do data caching, so if your web apps such as Wordpress,
    Drupal or vBulletin require data caching to APC or Xcache,
    it won't work with Zend OPcache.
    
    -----------------------------------------------------------------------------------------
    Do you want to use Zend OPcache [y/n] ? y
    
     
  3. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    When you log into your Centmin Mod installs, you may see this if you have set in persistent config file /etc/centminmod/custom_config.inc the variable to enable PHP version checks. This isn't enabled by default right now though.
    Code (Text):
    DMOTD_PHPCHECK='y'

    SSH login PHP version check notification
    Code (Text):
    ===============================================================================
    * PHP Update May Be Available via centmin.sh menu option 5
    * see https://community.centminmod.com/forums/18/
    ===============================================================================
    * Current PHP Version:        8.1.0RC6
    * Latest PHP Branch Version:  8.1.0 (github.com/php/php-src/releases)
    ===============================================================================
    
    ===============================================================================
     Centmin Mod code updates available for /usr/local/src/centminmod
     to update, run cmupdate command in SSH & re-run centmin.sh once & exit
    ===============================================================================
    


    You can also check latest PHP version for each PHP branch using getphpver command
    Code (Text):
    getphpver 81
    8.1.0
    
    getphpver 74
    7.4.26
    
    getphpver 73
    7.3.33
    

    Or get all latest PHP versions for each branch!
    Code (Text):
    getphpver
    8.1.0
    8.0.13
    7.4.26
    7.3.33
    7.2.34
    7.1.33
    7.0.33
    5.6.40
    5.5.38
    
     
  4. rdan

    rdan Well-Known Member

    5,439
    1,397
    113
    May 25, 2014
    Ratings:
    +2,186
    Local Time:
    11:42 AM
    Mainline
    10.2
    Waiting XF to fully support 8.1 :).
     
  5. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
  6. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    Also here's the PHP 8.1 branch bug tracker to check what bugs are being reported.

    If you're testing your PHP apps for PHP 8.1 compatibility, with Centmin Mod LEMP stack, you can check the PHP error logs for clues too at /var/log/php-fpm/www-php.error.log. I updated my test server to PHP 8.1.0 and with some Wordpress sites on there, I see a lot of PHP Deprecated errors for Wordpress at least in /var/log/php-fpm/www-php.error.log

    You can use a command line below to check last 100 lines of the PHP error log and print out a unique list of errors from the 4th field onwards (removing date/timestamp from 1st to 3rd fields)

    Code (Text):
    tail -100 /var/log/php-fpm/www-php.error.log | awk '{print substr($0, index($0, $4))}' | sort -u


    If that is empty, then try the below extended inspection commands to take into account www-php.error.log logrotation which rotates out the logs and empties out the www-php.error.log and saves previous with date timestamp and may use gzip or zstd compression.

    For gzip compression based logrotation, you can view all PHP errors with date and timestamp. Remember this will include all errors even previous fixed instead of just current log at /var/log/php-fpm/www-php.error.log. If you have more than 1 CPU thread on server, Centmin Mod will also setup multi-threaded zcat for faster processing - so replace zcat command with pzcat.
    Code (Text):
    zcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -exec ls -1rt "{}" +;)

    For gzip compression based logroation, you can view all unique PHP errors without date and timestamp. Remember this will include all errors even previous fixed instead of just current log at /var/log/php-fpm/www-php.error.log. If you have more than 1 CPU thread on server, Centmin Mod will also setup multi-threaded zcat for faster processing - so replace zcat command with pzcat.
    Code (Text):
    zcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -exec ls -1rt "{}" +;) | awk '{print substr($0, index($0, $4))}' | sort -u

    You can also narrow down to last 168hrs of logs with find option = -newermt "-168 hours" - just be aware the command will hang if you have no logs newer than 168hrs or whatever hours you set as awk and sort won't have anything to process. So just hit CTRL+C to abort.
    Code (Text):
    zcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -newermt "-168 hours" -exec ls -1rt "{}" +;) | awk '{print substr($0, index($0, $4))}' | sort -u


    For zstd compression based logrotation, you can view all PHP errors with date and timestamp. Remember this will include all errors even previous fixed instead of just current log at /var/log/php-fpm/www-php.error.log
    Code (Text):
    zstdcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -exec ls -1rt "{}" +;)

    For zstd compression based logroation, you can view all unique PHP errors without date and timestamp. Remember this will include all errors even previous fixed instead of just current log at /var/log/php-fpm/www-php.error.log
    Code (Text):
    zstdcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -exec ls -1rt "{}" +;) | awk '{print substr($0, index($0, $4))}'| sort -u

    You can also narrow down to last 168hrs of logs with find option = -newermt "-168 hours" - just be aware the command will hang if you have no logs newer than 168hrs or whatever hours you set as awk and sort won't have anything to process. So just hit CTRL+C to abort.
    Code (Text):
    zstdcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -newermt "-168 hours" -exec ls -1rt "{}" +;) | awk '{print substr($0, index($0, $4))}'| sort -u
     
    Last edited: Nov 28, 2021
  7. Itworx4me

    Itworx4me Active Member

    299
    27
    28
    Mar 14, 2017
    Ratings:
    +48
    Local Time:
    8:42 PM
    Nginx 1.25.X
    MariaDB 10.6.X
    I tired your code and it didn't return any errors. So I went looking into the /var/log/php-fpm and found this:
    Code (Text):
    total 92
    drwxr-xr-x   2 root root 4096 Nov 26 03:11 .
    drwxr-xr-x. 16 root root 4096 Nov 27 03:41 ..
    -rw-rw-rw-   1 root root  105 Nov 27 17:07 www-error.log
    -rw-rw-rw-   1 root root  152 Nov 10 23:24 www-error.log-20211111.gz
    -rw-rw-rw-   1 root root  119 Nov 11 12:57 www-error.log-20211112.gz
    -rw-rw-rw-   1 root root  119 Nov 17 12:05 www-error.log-20211118.gz
    -rw-rw-rw-   1 root root  119 Nov 18 16:33 www-error.log-20211119.gz
    -rw-rw-rw-   1 root root  119 Nov 20 02:17 www-error.log-20211120.gz
    -rw-rw-rw-   1 root root  133 Nov 20 15:41 www-error.log-20211121.gz
    -rw-rw-rw-   1 root root  119 Nov 22 03:19 www-error.log-20211122.gz
    -rw-rw-rw-   1 root root  130 Nov 23 14:25 www-error.log-20211124.gz
    -rw-rw-rw-   1 root root  140 Nov 25 00:53 www-error.log-20211125.gz
    -rw-rw-rw-   1 root root 1155 Nov 25 22:47 www-error.log-20211126
    -rw-rw-rw-   1 root root    0 Mar 27  2021 www-php.error.log
    -rw-rw-rw-   1 root root  219 Mar 18  2021 www-php.error.log-20210318.gz
    -rw-rw-rw-   1 root root  220 Mar 19  2021 www-php.error.log-20210319.gz
    -rw-rw-rw-   1 root root  219 Mar 20  2021 www-php.error.log-20210320.gz
    -rw-rw-rw-   1 root root  199 Mar 21  2021 www-php.error.log-20210321.gz
    -rw-rw-rw-   1 root root  220 Mar 22  2021 www-php.error.log-20210322.gz
    -rw-rw-rw-   1 root root  212 Mar 23  2021 www-php.error.log-20210323.gz
    -rw-rw-rw-   1 root root  224 Mar 24  2021 www-php.error.log-20210324.gz
    -rw-rw-rw-   1 root root  212 Mar 25  2021 www-php.error.log-20210325.gz
    -rw-rw-rw-   1 root root  200 Mar 26  2021 www-php.error.log-20210326.gz
    -rw-rw-rw-   1 root root  430 Mar 27  2021 www-php.error.log-20210327

    I am not sure why March and November are the only months with errors. Does this seem normal to you @eva2000 ???

    Thanks,
    Itworx4me
     
  8. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    Means your PHP apps are perfect and compatible with whatever PHP version you're using so you have no errors maybe. Usually, you won't have PHP errors if all is working well. With PHP 8.1, I got heaps related to Wordpress heh
    Code (Text):
    ls -lAhrt /var/log/php-fpm/ | grep 'www-php.error.log'
    -rw-rw-rw- 1 root root 1.9K Nov 18 03:06 www-php.error.log-20211118.zst
    -rw-rw-rw- 1 root root 1.6K Nov 19 02:18 www-php.error.log-20211119.zst
    -rw-rw-rw- 1 root root 1.6K Nov 20 02:41 www-php.error.log-20211120.zst
    -rw-rw-rw- 1 root root 1.8K Nov 21 03:03 www-php.error.log-20211121.zst
    -rw-rw-rw- 1 root root 1.6K Nov 22 02:36 www-php.error.log-20211122.zst
    -rw-rw-rw- 1 root root 1.7K Nov 23 02:57 www-php.error.log-20211123.zst
    -rw-rw-rw- 1 root root 1.6K Nov 24 02:40 www-php.error.log-20211124.zst
    -rw-rw-rw- 1 root root 1.6K Nov 25 03:25 www-php.error.log-20211125.zst
    -rw-rw-rw- 1 root root 1.8K Nov 26 02:00 www-php.error.log-20211126.zst
    -rw-rw-rw- 1 root root  18K Nov 27 02:47 www-php.error.log-20211127
    -rw-rw-rw- 1 root root  25K Nov 27 20:15 www-php.error.log
    
     
  9. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
  10. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
  11. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    From my test server with PHP 8.1.0 installed, the Wordpress cache-enabler based install's unique errors

    Code (Text):
    zstdcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -newermt "-168 hours" -exec ls -1rt "{}" +;) | awk '{print substr($0, index($0, $4))}'| sort -u | grep 'cache-enabler.domain.com'
    
    PHP Deprecated:  http_build_query(): Passing null to parameter #2 ($numeric_prefix) of type string is deprecated in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Transport/cURL.php on line 327
    PHP Deprecated:  http_build_query(): Passing null to parameter #2 ($numeric_prefix) of type string is deprecated in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/update.php on line 139
    PHP Deprecated:  Optional parameter $block_name declared before required parameter $block_content is implicitly treated as a required parameter in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/blocks.php on line 405
    PHP Deprecated:  Optional parameter $content declared before required parameter $post is implicitly treated as a required parameter in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/functions.php on line 840
    PHP Deprecated:  Optional parameter $object_id declared before required parameter $taxonomy is implicitly treated as a required parameter in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/nav-menu.php on line 1060
    PHP Deprecated:  Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Cookie/Jar.php on line 111
    PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Cookie/Jar.php on line 63
    PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Cookie/Jar.php on line 73
    PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Cookie/Jar.php on line 89
    PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Cookie/Jar.php on line 102
    PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91
    PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40
    PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51
    PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68
    PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82
    PHP Deprecated:  Return type of WP_Block_List::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 199
    PHP Deprecated:  Return type of WP_Block_List::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 151
    PHP Deprecated:  Return type of WP_Block_List::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 164
    PHP Deprecated:  Return type of WP_Block_List::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 175
    PHP Deprecated:  Return type of WP_Block_List::offsetExists($index) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 75
    PHP Deprecated:  Return type of WP_Block_List::offsetGet($index) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 89
    PHP Deprecated:  Return type of WP_Block_List::offsetSet($index, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 110
    PHP Deprecated:  Return type of WP_Block_List::offsetUnset($index) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 127
    PHP Deprecated:  Return type of WP_Block_List::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 138
    PHP Deprecated:  Return type of WP_Block_List::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-block-list.php on line 186
    PHP Deprecated:  Return type of WP_REST_Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/rest-api/class-wp-rest-request.php on line 934
    PHP Deprecated:  Return type of WP_REST_Request::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/rest-api/class-wp-rest-request.php on line 954
    PHP Deprecated:  Return type of WP_REST_Request::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/rest-api/class-wp-rest-request.php on line 966
    PHP Deprecated:  Return type of WP_REST_Request::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/rest-api/class-wp-rest-request.php on line 977
    PHP Deprecated:  Return type of WP_Theme::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-theme.php on line 553
    PHP Deprecated:  Return type of WP_Theme::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-theme.php on line 594
    PHP Deprecated:  Return type of WP_Theme::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-theme.php on line 534
    PHP Deprecated:  Return type of WP_Theme::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-theme.php on line 543
    PHP Warning:  curl_exec(): CURLOPT_STDERR resource has gone away, resetting to stderr in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/Requests/Transport/cURL.php on line 162
    PHP Warning:  Private methods cannot be final as they are never overridden by other classes in /home/nginx/domains/cache-enabler.domain.com/public/wp-includes/class-wp-session-tokens.php on line 69
    
     
  12. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    From my test Wordpress install with Redis Nginx level full HTML page caching and PHP 8.1.0 related errors - on WP admin side some pages get 502 bad gateway errors i.e. Wordpress update page.

    Code (Text):
    zstdcat -f $(find /var/log/php-fpm/ -type f -name "www-php.error.log*" -newermt "-168 hours" -exec ls -1rt "{}" +;) | awk '{print substr($0, index($0, $4))}'| sort -u | grep 'redis-nginx.domain.com'
    #0 /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/class-simplepie.php(1313): SimplePie_Registry->call()
    #10 /home/nginx/domains/redis-nginx.domain.com/public/wp-admin/admin-ajax.php(175): do_action()
    #1 /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/feed.php(783): SimplePie->init()
    #2 /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/widgets.php(1489): fetch_feed()
    #3 /home/nginx/domains/redis-nginx.domain.com/public/wp-admin/includes/dashboard.php(1509): wp_widget_rss_output()
    #4 /home/nginx/domains/redis-nginx.domain.com/public/wp-admin/includes/dashboard.php(1117): wp_dashboard_primary_output()
    #5 /home/nginx/domains/redis-nginx.domain.com/public/wp-admin/includes/dashboard.php(1493): wp_dashboard_cached_rss_widget()
    #6 /home/nginx/domains/redis-nginx.domain.com/public/wp-admin/includes/ajax-actions.php(400): wp_dashboard_primary()
    #7 /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/class-wp-hook.php(287): wp_ajax_dashboard_widgets()
    #8 /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters()
    #9 /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/plugin.php(478): WP_Hook->do_action()
    PHP Fatal error:  Uncaught TypeError: call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method WP_Feed_Cache::create() cannot be called statically in /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/SimplePie/Registry.php:215
    PHP Warning:  curl_exec(): CURLOPT_STDERR resource has gone away, resetting to stderr in /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/Requests/Transport/cURL.php on line 162
    PHP Warning:  get_comment(): Argument #1 ($comment) must be passed by reference, value given in /home/nginx/domains/redis-nginx.domain.com/public/wp-includes/class-wp-comment-query.php on line 484
    
     
  13. Itworx4me

    Itworx4me Active Member

    299
    27
    28
    Mar 14, 2017
    Ratings:
    +48
    Local Time:
    8:42 PM
    Nginx 1.25.X
    MariaDB 10.6.X
    Suggestion @eva2000
    Would be nice to add a Tools option with all the different error commands to the Centmin Mod Menu. It would be much easier to goto this area and run the commands. :)

    Code:
    1).  Centmin Install
    2).  Add Nginx vhost domain
    3).  NSD setup domain name DNS
    4).  Nginx Upgrade / Downgrade
    5).  PHP Upgrade / Downgrade
    6).  XCache Re-install
    7).  APC Cache Re-install
    8).  XCache Install
    9).  APC Cache Install
    10). Memcached Server Re-install
    11). MariaDB MySQL Upgrade & Management
    12). Zend OpCache Install/Re-install
    13). Install/Reinstall Redis PHP Extension
    14). SELinux disable
    15). Install/Reinstall ImagicK PHP Extension
    16). Change SSHD Port Number
    17). Multi-thread compression: zstd,pigz,pbzip2,lbzip2
    18). Suhosin PHP Extension install
    19). Install FFMPEG and FFMPEG PHP Extension
    20). NSD Install/Re-Install
    21). Data Transfer (TBA)
    22). Add Wordpress Nginx vhost + Cache Plugin
    23). Tools
           1). Error Command 1
           2). Error Command 2
           3). ect, ect ......
    24). Update Centmin Mod Code Base
    25). Exit
    Thanks,
    Itworx4me
     
  14. eva2000

    eva2000 Administrator Staff Member

    53,153
    12,110
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,645
    Local Time:
    1:42 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    Nah the Centmin Mod menu would end up too long for command shortcuts. Better to use a better SSH client which supports command shortcuts. I use SecureCRT with 250+ command shortcuts https://community.centminmod.com/th...client-apps-do-you-use.390/page-10#post-90843. Imagine Centmin Mod menu with 250+ options :LOL::eek:

    securecrt-command-manager-03.png
     
    Last edited: Nov 30, 2021