PowerCMS X ブログ

2026-08-24

管理画面から OPcache を一時的に無効化する DisableOpcache プラグイン

PHP の機能には OPcache があります。

OPcache を有効にすると、変換済みのオペコードをメモリ上に保存して再利用するため、毎回 PHP ファイルを解析する必要がなくなり、処理の高速化が図れます。

この OPcache が定期的な再起動 (共有メモリ領域の作り直し) を実行する際に、処理中のプロセスが終了するまで待機する最大時間を指定する設定として「opcache.force_restart_timeout」があります。
時間のかかる処理を実行している場合、この設定時間を超えると、OPcache の再起動を行うために該当プロセスが強制終了され、処理が途中で終了してしまうことがあります。

この事象を根本的に解消するには、php.ini などの OPcache 設定を調整する必要がありますが、ご利用の環境によっては、ユーザー側で設定を変更できない場合があるかと思います。

そこで、サンプルとして管理画面の操作時に OPcache を無効化できる「DisableOpcache プラグイン」を作成しました。
CSV インポートやアセットの一括アップロードなど、時間のかかる処理が途中で終了してしまう場合は、本プラグインを有効化することで事象が解消するかお試しください。

なお、OPcache を常時無効化するとパフォーマンスに影響する可能性があるため推奨しません。
基本的にはプラグイン設定「OPcache を無効化する」のチェックを外した状態でご利用ください。

ダウンロード:DisableOpcache.zip

  1. 上記ダウンロードリンクよりプラグインファイルをダウンロード
  2. 利用している PowerCMS X 環境のプラグインディレクトリに解凍したプラグインファイルをアップロード
    環境変数「plugin_paths」を設定し、別のディレクトリに設置することをお勧めします
  3. PowerCMS X にログイン
  4. プラグイン管理画面にて DisableOpcache プラグインを有効化
  5. DisableOpcache プラグインの設定ダイアログを開き、「OPcache を無効化する」にチェックをいれて保存

以上で管理画面の操作時に OPcache を無効化するようになります。

必要に応じてご活用ください。

※ 執筆時点で最新の PowerCMS X ver.4.1 にて動作確認をしています

カテゴリー:プラグイン | 技術情報

投稿者:Matsuoka

ブログ内検索

アーカイブ


日本語
ふりがな付き
English
简体中文
繁體中文
한국어