Apacheのモジュールとして使用しているPHPの設定を.htaccessで変更する場合、php_valueとphp_flagで設定する。
php_flagは論理値(true, false)を設定し、php_valueはそれ以外の値を設定する
php_value, php_flag共にPHP_INI_ALLまたはPHP_INI_PERDIRの設定オプションに対して利用できる
セットされている値をクリアしたい場合、php_valueにnoneを値として設定することでクリアできる
よく設定する項目
php_value memory_limit 128M php_value memory_limit -1 php_value post_max_size 64M php_value upload_max_filesize 10M php_value max_execution_time 60 php_value mbstring.internal_encoding UTF-8 php_value mbstring.detect_order UTF-8, SJIS-win, SJIS, eucJP-win, EUC-JP, JIS, ASCII php_value mbstring.language Japanese php_value output_buffering off php_value max_input_vars 2000 php_flag session.cookie_secure On php_flag session.cookie_httponly On ini_set("session.cookie_path", "/path/"); php_value date.timezone "Asia/Tokyo" php_flag short_open_tag On php_flag display_errors On php_value error_reporting 6135 // all error php_flag log_errors On php_value error_log "./logs/error.log"
### テスト
/etc/apache2/apache2.conf
<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
.htaccess
php_flag log_errors On php_value error_log /var/www/html/error.log
$ sudo systemctl restart apache2
error.log
[31-Dec-2022 03:49:59 UTC] PHP Parse error: syntax error, unexpected end of file, expecting ‘;’ or ‘,’ in /var/www/html/app.php on line 5
[31-Dec-2022 03:50:00 UTC] PHP Parse error: syntax error, unexpected end of file, expecting ‘;’ or ‘,’ in /var/www/html/app.php on line 5
OK!