#author("2022-02-15T09:20:42+09:00","default:kuji","kuji") #author("2023-02-20T08:53:22+09:00","default:kuji","kuji") [[PHP 5.5 から PHP 5.6 へアップグレード]] CONTENTS #contents ---- Lastmodified &lastmod; ---- *phpBB3 3.3.10 [#cda0ab04] https://www.phpbb.com/downloads/ *8.0から7.4 [#i79edca8] pkg set -o lang/php80:lang/php74 y pkg info \*php8\* > ~/installed-php-ports-list pkg remove '*php80*' y portinstall lang/php74 ZTS cd /usr/ports/lang/php74-extensions && make config portinstall lang/php74-extensions portinstall mod_php74 ZTS portinstall databases/phpmyadmin devel/pecl-APCu graphics/pecl-imagick --batch && apachectl restart * mod_php80 [#p42a278b] ===> NOTICE: ****************************************************************************** If you are building PHP-based ports in poudriere(8) or Synth with ZTS enabled, add WITH_MPM=event to /etc/make.conf to prevent build failures. ****************************************************************************** This port is deprecated; you may wish to reconsider installing it: *7.4から8.0 [#vb55436a] pkg set -o lang/php74:lang/php80 y # pkg info \*php7\* > ~/installed-php-ports-list pkg remove '*php74*' y portinstall lang/php80 ZTS cd /usr/ports/lang/php80-extensions make config make install clean portinstall mod_php80 ZTS portinstall databases/phpmyadmin Nextcloud 稼働サーバだとこれも↓念為 portinstall devel/pecl-APCu portinstall graphics/pecl-imagick apachectrl restart ---- pkg set -o lang/php74:lang/php80 y pkg info \*php7\* > ~/installed-php-ports-list pkg remove '*php74*' y portinstall lang/php80 ZTS cd /usr/ports/lang/php80-extensions && make config portinstall lang/php80-extensions --batch portinstall mod_php80 ZTS portinstall databases/phpmyadmin devel/pecl-APCu graphics/pecl-imagick --batch && apachectl restart * 20220125: [#e01919f9] ** 影響:lang / php74のユーザー 著者:tz@FreeBSD.org [#zeb7bea0] PHPのデフォルトバージョンが7.4から8.0に切り替えられました。 バイナリパッケージを使用する場合は、phpパッケージのリストを作成する必要があります 'pkg upgrade'を実行する前: #pkg info \*php7\* > ~/installed-php-ports-list アップグレード後、すべてのphp拡張機能があるかどうかをそのようなリストで確認してください まだインストールされており、必要に応じて再インストールします。 mod_php74を使用する場合は、それをアンインストールしてmod_php80をインストールする必要があります。 # pkg set -o lang/php74:lang/php73 or # pkg set -o lang/php80:lang/php73 # pkg info \*php7\* > ~/installed-php-ports-list mod_php73-7.3.33 php73-7.3.33 php73-bcmath-7.3.33 php73-bz2-7.3.33 php73-calendar-7.3.33 php73-ctype-7.3.33 php73-curl-7.3.33 php73-dba-7.3.33 php73-dom-7.3.33 php73-enchant-7.3.33 php73-exif-7.3.33 php73-extensions-1.0 php73-fileinfo-7.3.33 php73-filter-7.3.33 php73-ftp-7.3.33 php73-gd-7.3.33 php73-gettext-7.3.33 php73-gmp-7.3.33 php73-hash-7.3.33 php73-iconv-7.3.33 php73-imap-7.3.33 php73-interbase-7.3.33 php73-intl-7.3.33 php73-json-7.3.33 php73-ldap-7.3.33 php73-mbstring-7.3.33 php73-mysqli-7.3.33 php73-odbc-7.3.33 php73-opcache-7.3.33 php73-openssl-7.3.33 php73-pcntl-7.3.33 php73-pdo-7.3.33 php73-pdo_dblib-7.3.33 php73-pdo_firebird-7.3.33 php73-pdo_mysql-7.3.33 php73-pdo_odbc-7.3.33 php73-pdo_pgsql-7.3.33 php73-pdo_sqlite-7.3.33 php73-pecl-APCu-5.1.21 php73-pecl-imagick-3.5.1 php73-pecl-pdflib-4.1.4_1 php73-pgsql-7.3.33 php73-phar-7.3.33 php73-posix-7.3.33 php73-pspell-7.3.33 php73-readline-7.3.33 php73-recode-7.3.33 php73-session-7.3.33 php73-shmop-7.3.33 php73-simplexml-7.3.33 php73-snmp-7.3.33 php73-sockets-7.3.33 php73-sodium-7.3.33 php73-sqlite3-7.3.33 php73-sysvmsg-7.3.33 php73-sysvsem-7.3.33 php73-sysvshm-7.3.33 php73-tidy-7.3.33 php73-tokenizer-7.3.33 php73-wddx-7.3.33 php73-xml-7.3.33 php73-xmlreader-7.3.33 php73-xmlrpc-7.3.33 php73-xmlwriter-7.3.33 php73-xsl-7.3.33 php73-zip-7.3.33 php73-zlib-7.3.33 phpMyAdmin-php73-4.9.7 pkg remove '*php73*' portinstall lang/php74 ZTS cd /usr/ports/lang/php74-extensions make config make install clean portinstall mod_php74 ZTS portinstall databases/phpmyadmin Nextcloud 稼働サーバだとこれも↓念為 portinstall devel/pecl-APCu apachectrl restart * php71 to 72 with Nextcloud [#jd4b2228] pkg set -o lang/php71:lang/php72 pkg info | fgrep php71 > /tmp/php.txt で、一応、ファイル群のインストールリストを作成 pkg remove '*php71*' で、 pkg install `sed -e 's/-7.1.*$//' -e 's/php71/php72/' -e 's/extensions.*/extensions/' /tmp/php.txt ` するも、インストールされない。ので、 portinstall lang/php72 cd /usr/ports/lang/php72-extensions make config で、オプション確認して、インストール 後 /usr/ports/security/mcrypt mod_pnp72, databases/phpmyadmin portinstall graphics/pecl-imagick などもインストール apachectrl restart http://freebsd.sing.ne.jp/daily/12/06/02.html /usr/bin/su -m www -c "php /usr/local/www/nextcloud/occ upgrade とかすると、以下の様なエラーログがでる。 PHP Deprecated: Directive 'track_errors' is deprecated in Unknown on line 0 Deprecated: Directive 'track_errors' is deprecated in Unknown on line 0 Nextcloud is already latest version {"reqId":"6zvbYeW8vdGzBg7azPV7","level":3,"time":"2019-11-02T02:46:16+00:00", "remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"Directive 'track_errors' is deprecated at Unknown#0","userAgent":"--","version":"16.0.5.1"} と言うエラーがでる。 対処法は、 /usr/local/etc/php.ini track_errors = On ↓ ;track_errors = On ---- Nextcloud のバージョンアップ版がでていたので、portupgrade -r --batch したら、こんなメッセージ。 This version of Nextcloud requires at least PHP 7.0 You are currently running 5.6.37. Please update your PHP version. root@sun1:~:18_09_12:5:17 # ということで、 *PHP 5.6 から PHP 7.x へアップグレード [#i5f23774] drwxr-xr-x 3 root wheel 512 Sep 29 2016 php55/ drwxr-xr-x 2 root wheel 512 Sep 29 2016 php55-extensions/ drwxr-xr-x 3 root wheel 512 Aug 17 10:03 php56/ drwxr-xr-x 2 root wheel 512 Feb 1 2018 php56-extensions/ drwxr-xr-x 3 root wheel 512 Aug 4 03:20 php70/ drwxr-xr-x 2 root wheel 512 May 15 05:48 php70-extensions/ drwxr-xr-x 3 root wheel 512 Aug 20 15:53 php71/ drwxr-xr-x 2 root wheel 512 Jan 29 2017 php71-extensions/ drwxr-xr-x 3 root wheel 512 Aug 20 15:53 php72/ drwxr-xr-x 2 root wheel 512 Feb 1 2018 php72-extensions/ Portsには上記のバージョンがサポートされていて、72だと、Nextcloudがエラーする。具体的には、ログイン画面は出るが、ログインするとそこでエラーとなる。 で、7.2から7.0でダウングレード?した。 [[PHP 5.5 から PHP 5.6 へアップグレード]] を参考にして、56を72にしたが、72から70へは、簡単に php72 php72-extensions でuninstall して、 pkg set -o lang/php72:lang/php70 の後、残骸のモジュールを pkg remove '*php72*' ← コレすると、NextcloudもPhpMyAdminも消えるw してから、portinstall した。 取り敢えず、Nextcloudは動いた。 ---- * php56 to 71 [#i96a2f59] ** pkg remove '*php56*' [#l8377851] php56版のNextcloudとPhpMyAdminも消えるょ ** pkg set -o lang/php56:lang/php71 [#ec19cc91] y ** portinstall lang/php71 [#p3992a79] for worker &ref(php71_for_worker.PNG); check ZTS [Wed Sep 12 06:28:52.197731 2018] [php7:crit] [pid 2077:tid 34397577216] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP. AH00013: Pre-configuration failed ** mod_php71 もお忘れ無く [#k7c6f08e] ** cd /usr/ports/lang/php71-extensions/ [#a253823f] *** make config [#ce0b7277] ** portinstall lang/php71-extensions --batch [#u173f376] ** portinstall databases/phpmyadmin [#ha45902c] * phpBB3 on php71 [#m1f9d0ad] https://www.phpbb.com/community/viewtopic.php?t=2399941&p=14636006 mysql-driverは長い間廃止されており(php 5.4以降)、php 7.0で削除されているため、mysqli-driverを使う必要があります。config.phpを // phpBB 3.2.x auto-generated configuration file // Do not change anything in this file! $dbms = 'phpbb\\db\\driver\\mysql'; ↓ $dbms = 'phpbb\\db\\driver\\mysqli'; * OpenPNE3 [#p1f14f1e] OpenPNE 3.9.2 on PHP7.1 www2.smb.net OK *Wordpress 真っ白 [#kb65b116] プラグイン「StatPress Reloaded」がFetal error Elegant theme では、Warning: Illegal string offset in がでる。 https://wp-doctor.jp/blog/2016/03/10/wordpress-%E3%83%AF%E3%83%BC%E3%83%89%E3%83%97%E3%83%AC%E3%82%B9%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E8%A7%A3%E8%AA%AC%EF%BC%9Awarning-illegal-string-offset-in/ /usr/local/www/data/wordpress/wp-config.php に下記追加で、エラー表示抑制した ini_set('display_errors','Off'); ini_set('error_reporting', 0 ); define('WP_DEBUG', false); define('WP_DEBUG_DISPLAY', false); ---- Total access &counter(total);:本日 &counter(today);:昨日 &counter(yesterday); #counter([total|today|yesterday]);