IT story

X-Powered-By 제거

hot-time 2020. 7. 3. 18:12
반응형

X-Powered-By 제거


  1. PHP에서 X-Powered-By 헤더를 어떻게 제거합니까? 나는 Apache 서버에 있고 PHP 5.21을 사용합니다. 5.21에서 지원하지 않으므로 php에서 header_remove 함수를 사용할 수 없습니다. Header unset X-Powered-By를 사용했는데 로컬 시스템에서는 작동했지만 프로덕션 서버에서는 작동하지 않았습니다.

  2. PHP가 ver <5.3에 대해 header_remove ()를 지원하지 않으면 대안이 있습니까?


나는 그것이 PHP.iniexpose_php설정에 의해 제어된다고 생각합니다 .

expose_php = off

PHP가 서버에 설치되어 있다는 사실을 웹 서버 헤더에 추가하여 PHP가 공개 할 수 있는지 여부를 결정합니다. 어떤 식 으로든 보안 위협은 아니지만 서버에서 PHP를 사용할지 여부를 결정할 수 있습니다.

직접적인 보안 위험은 없지만 David C가 지적한 것처럼 오래된 (그리고 취약한) PHP 버전을 노출시키는 것은 사람들이 그것을 시도하고 공격하도록 초대 할 수 있습니다.


header_remove("X-Powered-By");

https://secure.php.net/manual/en/function.header-remove.php


expose_php 지시어비활성화하여 PHP의 대 화력을 소거 하지 않으면 ( php.ini에 액세스해야 함 ) Apache Header지시어사용 하여 헤더 필드를 제거 할 수 있습니다 .

Header unset X-Powered-By

if (function_exists('header_remove')) {
    header_remove('X-Powered-By'); // PHP 5.3+
} else {
    @ini_set('expose_php', 'off');
}

php.ini에 액세스 할 수있는 경우을 설정하십시오 expose_php = Off.


FastCGI를 사용하는 경우 다음을 시도하십시오.

fastcgi_hide_header X-Powered-By;

다음과 같이 헤더를 보내기 전에 header () 호출을 추가하십시오.

header('X-Powered-By: Our company\'s development team');

php.ini의 expose_php 설정에 관계없이


이 솔루션은 나를 위해 일했습니다 :)

스크립트에 아래 줄을 추가하고 확인하십시오.

Ngnix / Apache 등의 레벨 설정이 필요하지 않을 수 있습니다.

header("Server:");

참고 URL : https://stackoverflow.com/questions/2661799/removing-x-powered-by

반응형