# Changelog - Version 8.5.6-a ## 変更点 ### Composer導入先をWebルート外に変更(セキュリティ改善) 従来、Composerは Webルート `/var/www/html` 直下に導入されており、`composer.json` / `composer.lock` / `vendor/` がWeb経由で公開される状態でした。これらのファイルは公開する必要がなく、依存パッケージ構成の漏洩などセキュリティリスクとなるため、デフォルトの導入先をWebルート外の `/var/www` に変更しました。 #### 主な変更点 1. **values.yaml** - `composer.workingDir` パラメータを追加(デフォルト: `"/var/www"`) - Composerの導入先ディレクトリを任意のパスに変更可能 2. **templates/deployment.yaml** - Composer実行時の作業ディレクトリを `composer.workingDir` に変更(`mkdir -p` で自動作成) - `workingDir` がWebルート(`/var/www/html`)以外の場合、PVCの `composer` サブパスを `workingDir` にマウントし、vendor類を永続化(Pod再起動時の再構築を回避、従来と同等の永続化動作を維持) 3. **README.md** - `composer.workingDir` のパラメータ説明を追加 - Composer導入先とautoload読み込みパスの解説を追加 - Selenium使用例の `require_once` パスを更新 ## PHPコードでの利用 ```php // 新: デフォルトの読み込みパス require_once '/var/www/vendor/autoload.php'; ``` ## 互換性 - **注意**: PHPコード内で `require_once '/var/www/html/vendor/autoload.php';` や相対パス `vendor/autoload.php` を使用している場合は、パスの修正が必要です。 - 旧バージョンと同じ動作(Webルート直下に導入)へ戻す場合は、以下を指定してください: ```yaml composer: workingDir: "/var/www/html" ``` - 既存のPVC内 `html/vendor` はそのまま残ります。不要であれば手動で削除してください。 ## セキュリティ - `vendor/` や `composer.json` / `composer.lock` がWebサーバー(Nginx)から配信されなくなり、依存パッケージ情報の漏洩や、vendor内スクリプトへの直接アクセスのリスクを排除できます。 --- **リリース日**: 2026-07-19 **担当**: プロサーバーエンジニア(Claude)