>  기사  >  백엔드 개발  >  Nginx가 .php 파일에 대한 액세스를 금지하는 방법에 대한 간략한 분석

Nginx가 .php 파일에 대한 액세스를 금지하는 방법에 대한 간략한 분석

PHPz
PHPz원래의
2023-03-28 17:34:391356검색

Nginx는 고성능, 고신뢰성 웹 서버로 대규모 웹 사이트 구축에 널리 사용됩니다. 그러나 일부 악의적인 공격자는 .php 파일을 사용하여 공격을 수행합니다. 보안 문제를 피하기 위해 .php 파일에 대한 액세스를 금지해야 합니다. 이 기사에서는 Nginx가 .php 파일에 대한 액세스를 금지하는 방법을 소개합니다.

  1. 위치 지시문 사용

Nginx 구성 파일에서 위치 지시문을 사용하여 특정 디렉터리나 파일에 대한 액세스를 제한할 수 있습니다. 위치 지시문에 다음 코드를 추가하면 .php 파일에 대한 액세스를 비활성화할 수 있습니다.

location ~ \.php$ {
    deny all;
}

위 코드에서 는 이스케이프 문자를 나타내고 .는 모든 문자를 나타내며 $는 끝을 나타냅니다. 따라서 이 코드의 의미는 .php로 끝나는 모든 파일을 정규식과 일치시키고 해당 파일에 대한 액세스를 비활성화하는 것입니다.

이 방법은 PHP 파일에 대한 액세스를 금지하는 데에만 적합하며 다른 유형의 파일에는 유효하지 않습니다.

  1. if 지시문 사용

위치 지시문을 사용하는 것 외에도 if 지시문을 사용하여 .php 파일에 대한 액세스를 금지할 수도 있습니다. Nginx 구성 파일에 다음 코드를 추가할 수 있습니다.

if ($request_uri ~* “\.php”) {
    return 403;
}

위 코드의 의미는 요청된 URI에 .php가 포함되어 있으면 403(액세스 거부)이 반환된다는 것입니다.

그러나 if 명령어를 사용할 때 보안 취약점이 발생할 수 있는 몇 가지 위험이 있습니다. 따라서 필요한 경우에만 if 지시문을 사용하는 것이 좋습니다.

  1. PHP 인터프리터의 구성 파일을 수정하세요

Nginx 구성 파일에서 .php 파일에 대한 액세스를 금지하는 것 외에도 PHP 인터프리터의 구성 파일을 수정하여 동일한 효과를 얻을 수도 있습니다.

PHP 인터프리터의 구성 파일 php.ini에 다음 코드를 추가할 수 있습니다.

security.limit_extensions = .php

위 코드의 의미는 .php 파일만 실행이 허용되고 다른 유형의 파일은 금지된다는 것입니다. 실행에서. 이러한 방식으로 불필요한 보안 위험을 피할 수 있습니다.

이 방법은 php 파일 실행을 금지하는 데에만 적합하며 .php 파일에 액세스하는 데는 유효하지 않습니다.

요약

.php 파일에 대한 액세스를 금지하는 것은 웹사이트 보안을 보장하는 중요한 조치 중 하나입니다. 이 기사에서는 위치 지시문, if 지시문 사용 및 PHP 인터프리터의 구성 파일 수정을 포함하여 Nginx가 .php 파일에 대한 액세스를 금지하는 여러 가지 방법을 소개합니다. 웹사이트의 보안을 강화하기 위해서는 독자의 웹사이트에 적합한 방법을 선택하는 것이 좋습니다.

위 내용은 Nginx가 .php 파일에 대한 액세스를 금지하는 방법에 대한 간략한 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.