>  기사  >  운영 및 유지보수  >  Nginx에서 .php 파일에 대한 액세스를 비활성화하는 방법

Nginx에서 .php 파일에 대한 액세스를 비활성화하는 방법

WBOY
WBOY앞으로
2023-05-17 11:16:391858검색

  1. 위치 지시어 사용

Nginx 구성 파일의 위치 지시어를 사용하여 특정 디렉터리나 파일에 대한 액세스를 제한하세요. .php 파일에 대한 액세스를 금지하려면 위치 지시문에 다음 코드를 추가하면 됩니다.

location ~ \.php$ {
    deny all;
}

위 코드에서 는 이스케이프 문자를 나타내고, .는 모든 문자를 나타내고, $는 끝을 나타냅니다. 따라서 이 코드의 기능은 정규식을 사용하여 .php로 끝나는 모든 파일을 일치시킨 다음 해당 파일에 대한 액세스를 금지하는 것입니다.

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

  1. if 지시어 사용

.php 파일에 대한 접근을 금지하는 방법은 위치 지시어뿐만 아니라 if 지시어도 있습니다. 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 파일에 액세스하는 데는 유효하지 않습니다.

위 내용은 Nginx에서 .php 파일에 대한 액세스를 비활성화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제