PHP

【ローカルサーバ】

PHPを使っていた頃の備忘録。

PHP8.0

インストール

## 先にutilsをインストールします
# dnf -y install dnf-utils
 
## 8.1をインストールします。
# dnf module install -y php:remi-8.1
# dnf -y install php-xmlrpc php-gd php-pdo php-mysqlnd php-opcache
# dnf -y install php-pecl-zip php-pecl-apcu

# php -v
PHP 8.1.12 (cli) (built: Oct 25 2022 17:30:00) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.12, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.12, Copyright (c), by Zend Technologies

PHP 設定

# nano /etc/php.ini

(↓PHPでアップロードできるファイルの上限サイズ)
post_max_size = 64M
upload_max_filesize = 64M

(↓mbstringで使用されるデフォルト言語を日本語にする。)
mbstring.language = Japanese

(↓デフォルトの文字コードを指定する)
mbstring.internal_encoding = UTF-8

(↓HTTP通信時のインプットとアウトプットの文字コード自動変換禁止)
mbstring.http_input = pass
mbstring.http_output = pass

(↓文字エンコーディング検出や内部文字エンコーディングへの変換を行う文字エンコーディングフィルタを無効にします。)
mbstring.encoding_translation = Off

(↓文字コードの自動検出時の優先順位を指定)
mbstring.detect_order = UTF-8,EUC-JP,SJIS,JIS,ASCII 

(↓変換に失敗した場合や無効な文字の代わりに表示する文字を指定)
mbstring.substitute_character = none

php-fpm 設定

# nano /etc/php-fpm.d/www.conf
(↓実行ユーザ・グループをnginxに変更します。)
user = apache -> user = nginx に変更
group = apache -> group = nginx に変更

php高速化

OPCache、APC設定

# nano /etc/php.d/10-opcache.ini

zend_extension=opcache
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.blacklist_filename=/etc/php.d/opcache*.blacklist

起動

# systemctl start php-fpm
# systemctl enable php-fpm
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
# systemctl restart nginx
タイトルとURLをコピーしました