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