2026年5月20日

2026年5月20日

.htaccessでPHP設定を変更する方法【共有サーバー対応】

はじめに

共有ホスティングでphp.iniを直接編集できない場合、.htaccessファイルにphp_valuephp_flagディレクティブを追加することでPHP設定を変更できます。ただしApacheサーバーかつサーバー側でAllowOverrideが許可されている場合のみ有効です。

.htaccessで変更できるPHP設定

# .htaccessに追加するPHP設定

# メモリ制限
php_value memory_limit 256M

# 最大実行時間
php_value max_execution_time 300
php_value max_input_time 300

# ファイルアップロード上限
php_value upload_max_filesize 64M
php_value post_max_size 64M

# 最大入力変数数
php_value max_input_vars 3000

# エラー表示(boolean値はphp_flag)
php_flag display_errors Off
php_flag log_errors On

# セッション設定
php_value session.gc_maxlifetime 3600

php_value と php_flag の違い

| ディレクティブ | 用途 | 値の例 |

|--------------|------|--------|

| php_value | 文字列・数値の設定 | 256M, 300, 3000 |

| php_flag | On/Off の設定 | On, Off |

設定手順

ステップ1:.htaccessの場所を確認

WordPressルートディレクトリ(wp-config.phpと同じ場所)にある.htaccessファイルを編集します。

/public_html/
├── wp-config.php
├── .htaccess   ← ここに追記
├── wp-admin/
└── wp-content/

ステップ2:.htaccessに設定を追加

既存のWordPress用.htaccessの末尾(または# BEGIN WordPressより前)に追記します:

# カスタムPHP設定
php_value memory_limit 256M
php_value max_execution_time 300
php_value upload_max_filesize 64M
php_value post_max_size 64M

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
...
# END WordPress

ステップ3:設定が反映されたか確認

WordPressの管理画面 →「ツール」→「サイトヘルス」→「情報」→「サーバー」でPHPの設定値を確認できます。

ステップ4:エラーが発生した場合

php_valueを追加したら500エラーになる場合、サーバーがAllowOverrideを許可していない可能性があります:

# 500エラーになる場合は削除して別の方法を使う
# php_value memory_limit 256M  ← コメントアウト

Nginx環境では.htaccessのphp_valueは使えません。php.iniまたはサーバー設定で変更してください。

注意事項

  • php_valueはApacheのmod_phpまたはCGI環境でのみ有効
  • NginxやLiteSpeeedでは別の方法が必要
  • .htaccessは全リクエストで読み込まれるため、パフォーマンスへの軽微な影響がある
  • php_valueの値はphp.iniのmemory_limitより大きくはできない(サーバー上限あり)

まとめ

.htaccessへのphp_value追記は共有ホスティングでphp.iniを直接編集できない場合の有効な代替手段です。500エラーが発生する場合はサーバーがAllowOverrideを許可していないため、ホスティングのコントロールパネルから設定変更を行ってください。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ