PHPでX-Powered-Byヘッダーを削除するにはどうすればよいですか?私はApacheサーバーを使用しており、php 5.21を使用しています。5.21ではサポートされていないため、phpでheader_remove関数を使用できません。Header unset X-Powered-Byを使用しましたが、ローカルマシンでは機能しましたが、運用サーバーでは機能しませんでした。
PHPがバージョン5.3未満のheader_remove()をサポートしていない場合、代替はありますか?
PHPでX-Powered-Byヘッダーを削除するにはどうすればよいですか?私はApacheサーバーを使用しており、php 5.21を使用しています。5.21ではサポートされていないため、phpでheader_remove関数を使用できません。Header unset X-Powered-Byを使用しましたが、ローカルマシンでは機能しましたが、運用サーバーでは機能しませんでした。
PHPがバージョン5.3未満のheader_remove()をサポートしていない場合、代替はありますか?
回答:
PHP.iniのexpose_php
設定によって制御されていると思います。
expose_php = off
PHPがサーバーにインストールされていることを(PHPがWebサーバーのヘッダーに署名を追加するなどして)公開するかどうかを決定します。決してセキュリティ上の脅威ではありませんが、サーバーでPHPを使用しているかどうかを判断することができます。
直接的なセキュリティリスクはありませんが、David Cが指摘するように、PHPの古い(そして場合によっては脆弱な)バージョンを公開することは、人々が攻撃しようとする誘いになるかもしれません。
header_remove("X-Powered-By");
expose_php = off
機能します。.htaccessやphpファイルでは機能しません。
エクスポーズ_phpディレクティブを無効にしてPHPの対話性をミュートできない場合(php.iniへのアクセスが必要)、ApacheのHeader
ディレクティブを使用してヘッダーフィールドを削除できます。
Header unset X-Powered-By
php.iniにアクセスできる場合は、を設定しexpose_php = Off
ます。