PHP(ピー・エイチ・ピー)

PHP

.htaccessで設定できるPHP(php.ini)の項目

php.iniでの設定項目の中には、.htaccessで設定を変更できる項目もあります。

全ての項目をまとめるのは大変なので、
今回は、よく使う設定項目だけまとめてみました。

と言っても、結構多いですが。。。

「php_value」ディレクティブと「php_flag」ディレクティブ

.htaccessを使ってPHPの設定を行う場合には、「php_value」ディレクティブ、または、「php_flag」ディレクティブを使用します。

ディレクティブに設定する値が文字列の場合には「php_value」を
ディレクティブに設定する値が論理値の場合には「php_flag」を
それぞれ使用します。

記述方法は、

php_value 設定項目
php_flag 設定項目 on(またはoff)

となります。

よく設定する項目

memory_limit:メモリ使用量の上限

【説明】
メモリ使用量の上限を設定します。
デフォルトだと「128M」に設定されています。

【使い方】
「128M」に設定する場合
php_value memory_limit 128M

無制限(上限なし)に設定する場合
php_value memory_limit -1

 

post_max_size:POSTの最大サイズ

【説明】
メモリ使用量の上限を設定します。
デフォルトだと「8M」に設定されています。

【使い方】
php_value post_max_size 64M

 

upload_max_filesize:1ファイル辺りの最大アップロードサイズ

【説明】
メモリ使用量の上限を設定します。
デフォルトだと「2M」に設定されています。

WordPressを使っている業者さんからよく出てくる要望として、
ファイルのアップロードサイズが2Mだと小さい」というものがあります。
その場合には、この「upload_max_filesize」の値を変更すればOKです。

【使い方】
php_value upload_max_filesize 10M

注意点

memory_limit」「post_max_size」「upload_max_filesize」の3項目は、セットで設定を行う機会が多いです。

■設定例
php_value memory_limit 128M
php_value post_max_size 64M
php_value upload_max_filesize 10M

その際注意すべき点は、
各項目に設定する値が以下のよう関係になっていないと、意図した通りに設定が効かない点です。
memory_limit > post_max_size > upload_max_filesize

 

max_execution_time

【説明】
スクリプトが強制終了されるまでの最大時間を秒単位で設定します。

【使い方】
php_value max_execution_time 60

 

default_charset

【説明】
デフォルトの文字コードを設定します。
「Content-Type:text/html;charset=xxxx"」に設定される文字コードであって、
内部エンコーディングの文字コード設定ではないの注意して下さい。

【使い方】
php_value default_charset UTF-8

 

mbstring.internal_encoding

【説明】
PHPの内部エンコーディングの文字コードを設定します。

【使い方】
php_value mbstring.internal_encoding UTF-8

 

detect_order:デフォルトの文字コードの検出順序を設定

【説明】
文字コードを自動判別する際に、どの文字コードから検出するのかの順序を設定します。

【使い方】
php_value mbstring.detect_order UTF-8,SJIS-win,SJIS,eucJP-win,EUC-JP,JIS,ASCII

自動判別に設定する場合には「auto」を設定します。
php_value mbstring.detect_order auto
※勝手に検出順を判別されるので、「auto」ではなく明示しておいた方がいいです。

 

mbstring.language

【説明】
mbstringで使用するデフォルトの言語を設定します。

【使い方】
php_value mbstring.language Japanese

 

output_buffering

【説明】
出力バッファリングの設定を行います。
※「バッファリング」とはデータを専用の記憶領域に一時的に保存しておくことです。

【使い方】
■「On」に設定することで、全てのPHPスクリプトファイルで出力バッファリングを有効出来ます。
php_flag output_buffering Off

■バッファのサイズを制限したい場合には、最大のバイト数を設定します。
php_flag output_buffering 4096

■無効にしたい場合には「Off」を設定します。
php_flag output_buffering Off

【注意点】
output_bufferingをOffに設定しても、output_handlerを有効「On」に設定すると、出力バッファリングは有効になります。

 

max_input_vars

【説明】
POSTやGETなどで送信できるデータ数の上限を設定できます。
PHP5.3.9から導入された項目で、デフォルトでは1,000個まで送信可能になっています。

【使い方】
php_value max_input_vars 2000

 

cookie_secure

【説明】
HTTPS通信時(セキュアな接続時)にのみクッキー(Cookie)を送信できるように設定できます。

【使い方】
php_flag session.cookie_secure On

 

cookie_httponly

【説明】
JavaScriptのようなスクリプト言語からクッキー(Cookie)へアクセス出来ないように設定できます。

【使い方】
php_flag session.cookie_httponly On

【注意点】
これを設定しておくことにより、XSSによる攻撃を防いでくれます(100%防いでくれるみたいではないようです)。

ただし、対応していないブラウもあるので注意して下さい。
主要ブラウザはほとんど対応していますが、バージョンが古いと対応していな可能背もあります。

 

session.cookie_path

【説明】
クッキー(Cookie)が有効なパスを設定します。

【使い方】
ini_set("session.cookie_path", "/path/");

 

date.timezone:タイムゾーンを設定

【説明】
タイムゾーンの設定を行います。

【使い方】
php_value date.timezone "Asia/Tokyo"
でタイムゾーンを日本に設定できます。

【注意点】
ちなみに、日本の標準時間は世界標準時間(UTC)より9時間進んでいます。
タイムゾーンをゾーンを正確に設定しておかないと、date()関数などで正確な日付を取得できないので、気を付けて下さい。

 

short_open_tag

【説明】
PHPタグの短縮型()を有効・または、無効に設定します。

【使い方】
■短縮型を有効にする場合
php_flag short_open_tag On

■短縮型を無効にする場合
php_flag short_open_tag Off

【注意点】
最近は、デフォルトでは無効「Off」になっています。

短縮型を使うことによるメリットは無く、むしろ、「」はXMLでも使用されるためにプログラムが不具合を起こす可能性もあります。
昔組んだプログラムで短縮型()を使っている場合などを除いては、
基本的には無効「Off」のままにしておくことをおすすめします。

 

asp_tags

【説明】
ASP形式のタグ(<% %>)を有効・または、無効に設定します。
PHP7からは削除されています。

【使い方】
php_flag asp_tags On

 

display_errors

【説明】
PHPの内部エラーが発生した際に、エラーメッセージを画面に表示させるために使用します。

【使い方】
■エラーを出力させる場合には、「On」を設定します。
php_flag display_errors On

■エラーを出力させないようにする場合には、「Off」を設定します。
php_flag display_errors Off

 

error_reporting

【説明】
出力するPHPのエラーレベルを設定します。

【使い方】
■例えば、全てのPHPエラーを出力する場合には、「6135」を設定します。
php_value error_reporting 6135

■例えば、全てのPHPエラーを出力する場合には、「6135」を設定します。
php_value error_reporting 6135

■display_errorsと一緒に設定することも多いです。
php_flag display_errors On
php_value error_reporting 6135

 

log_errors

【説明】
エラーログを生成するかどうかの設定を行います。

【使い方】
■エラーログを生成する場合には、「On」を設定します。
php_flag log_errors On

■エラーログを生成しない場合には、「Off」を設定します。
php_flag log_errors Off

 

error_log

【説明】
エラーログの保存先パスの設定を行います。

【使い方】
php_value error_log "./logs/error.log"

■log_errorsとerror_logはセットで設定することも多いです。
php_flag log_errors On
php_value error_log "./logs/error.log"

■本番環境では画面にエラーを出さずに、ログにのみ書き込むことも多いです。
その場合には、display_errorsを「Off」に設定しておきます。
php_flag display_errors Off
php_flag log_errors On
php_value error_log "./logs/error.log"

WordPress短期学習プログラム

関連記事

  1. PHP

    PHPExcelを使ってエクセルを出力

    弊社のお客様はほぼ不動産業者様ということで、時々物件データの図面を…

  2. Database(DB:データベース)

    PHP

    【phpPgAdmin】php-pgsqlをインストール

    phpPgAdminをインストール後に、ブラウザから管理画面にアク…

  3. PHP

    PHPで切り捨て、切り上げ、四捨五入

    プログラミングをしている時に、何らからの計算処理をすると小数点以下…

  4. PHP(ピー・エイチ・ピー)

    PHP

    【PHP】echoとprintのどっちを使えばいいの!?

    【PHP】文字列の出力は、echo() または print()…

  5. PHP

    Smartyで全角英数字を半角英数字に変換

    今日は、久しぶりにSmartyを触りました。といっ…

  6. PHP(ピー・エイチ・ピー)

    PHP

    imagejpeg(): Filename cannot be empty in...

    以前組んだシステムを別のサーバーに設置することに!!…

最近の記事

  1. PHP(ピー・エイチ・ピー)
  2. PHP(ピー・エイチ・ピー)
  3. WP:WordPress(ワードプレス)
  4. WP:WordPress(ワードプレス)
  5. WP:WordPress(ワードプレス)
  6. Security(セキュリティ)
  7. WP:WordPress(ワードプレス)
  8. WP:WordPress(ワードプレス)
  9. WP:WordPress(ワードプレス)
  10. アフィリエイト
PAGE TOP