最近、VirtualBox の CentOS でいろいろ弄ることを覚えました♪それで、PHP の設定ファイルである php.ini の設定をこう変更したらどうでしょうか?と編集してみましたのでメモします。
PHP のバージョンは、5.4.11 です。また、設定を変更する時の観点としては次です。
- セキュリティを強める
- ログのレベルと出力先を明確に
- 言語は日本語
- 文字エンコーディングは UTF-8 を基準に
なお、自信を持っておすすめできるベストプラクティスな推奨設定ではありません。試行錯誤中です。この方が良いことが多そう。。。かな?という暫定設定でございますこと、お断りいたします。
なお、操作は ssh 接続で行いました。ターミナルや、Tera Term での作業ですね。
php.ini、12の編集項目
php.ini で設定できる項目は、非常にたくさんありますので、今回編集した部分のみ掲載いたします。それにしましても大体の項目の内容が今のわたくしには理解できません。。。難しい、です。
[PHP] のブロック
# 応答ヘッダーにPHPのバージョン等を出力しない expose_php = Off # ログレベル。本番環境では E_ALL とする error_reporting = E_ALL | E_STRICT # ブラウザでのエラー表示。本番環境では Off とする display_errors = On # エラーをログに残す log_errors = On # 攻撃の内容を詳しく知る為に 4KB 程に設定 log_errors_max_len = 4096 # エラーログ出力先 error_log = "/var/log/php_errors.log" # 文字エンコーディング default_charset = "UTF-8"
[Date] のブロック
# タイムゾーン date.timezone = "Asia/Tokyo"
[mbstring] のブロック
# デフォルト言語 mbstring.language = Japanese # 内部文字エンコーディング mbstring.internal_encoding = UTF-8 # HTTP入力文字エンコーディングのデフォルト mbstring.http_input = auto # 文字エンコーディング検出順序のデフォルト mbstring.detect_order = auto
操作ポイント
編集前バックアップと編集
# PHP 設定ファイルのバックアップ cp -a /etc/php.ini /etc/php.ini.org # PHP 設定ファイルの編集 vim /etc/php.ini
編集完了後にやること
# リロードして設定ファイルを反映 /etc/init.d/httpd reload
ウェブブラウザでの設定反映確認
# PHP の設定確認用のファイル作成 echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php # http://192.168.56.111/phpinfo.php にアクセスし、設定情報を確かめる。 # テストファイル削除 rm /var/www/html/phpinfo.php
おわりに
php.ini を意識し始めたは、php.ini のタイムゾーンの簡単な確認方法と実際に date.timezone を設定しました! | oki2a24 で紹介させていただいた次のページを見てからでした。
シンプルでとても良いです。これに加えて次のページを拝見しまして取り入れたい設定を採用させていただききました。
ですので、もしかしたら弄る前よりいろいろなんかどこか悪くなる可能性もあります。しばらくこの設定で本ブログを運用して見極めて行きたいと思います。
※追記 この投稿の留意点や問題点を改善したものを投稿しています。よろしければ併せてご参照ください。
以上です。
「php.ini の自分なりのお勧め設定を考えました♪【試行錯誤】」への5件の返信
[…] ← 前へ […]
[…] でようやく php.ini の最低限の設定がわかってきたような気がしています。php.ini の自分なりのお勧め設定を考えました♪【試行錯誤】 | oki2a24 の後に、本投稿の設定をすればよいのです。 […]
[…] php.ini の自分なりのお勧め設定を考えました♪【試行錯誤】 | oki2a24 […]
[…] php.ini の自分なりのお勧め設定を考えました♪【試行錯誤】 | oki2a24 […]
[…] php.ini の自分なりのお勧め設定を考えました♪【試行錯誤】 | oki2a24 […]