PHP에서 직접 파일 액세스 방지
웹 개발 세계에서는 민감한 파일, 특히 단독으로 사용하려는 파일에 대한 액세스를 제어하는 것이 중요합니다. 다른 스크립트에 포함하기 위한 것입니다. URL을 통해 이러한 파일에 직접 액세스할 수 있는 경우 일반적인 문제가 발생하여 잠재적인 보안 취약점이 발생할 수 있습니다.
이러한 문제를 해결하기 위해 PHP는 포함된 파일에 대한 직접 액세스를 제한할 수 있는 간단한 솔루션을 제공합니다. 간단한 조건부 검사를 구현하면 해당 파일을 직접 실행하려는 무단 시도를 막을 수 있습니다.
이 보호 기능을 효과적으로 구현하려면 다음 단계를 따르세요.
1. 리퍼러 소스 확인
include로만 사용하려는 PHP 파일을 엽니다. 파일 시작 부분에 다음 코드를 추가합니다:
if (!isset($_SERVER['HTTP_REFERER'])) { die('Direct access not permitted'); } $current_url = $_SERVER['HTTP_REFERER']; $allowed_url = 'https://example.com/page_that_includes_this_file.php'; if ($current_url != $allowed_url) { die('Direct access not permitted'); }
2. 상수 정의
보호된 파일이 포함된 PHP 파일의 시작 부분에 다음 코드를 추가합니다.
define('MY_CONSTANT', TRUE);
설명:
첫 번째 코드 부분은 요청이 예상 참조 URL(이 경우 파일을 포함해야 하는 페이지)에서 왔는지 확인합니다. 리퍼러가 설정되지 않았거나 허용된 URL과 일치하지 않으면 오류 메시지가 생성됩니다.
코드의 다음 부분은 포함 파일에 "MY_CONSTANT"라는 상수를 정의합니다. 이를 포함하는 페이지에서 이 상수를 TRUE로 정의하여 페이지가 파일에 합법적으로 액세스할 수 있도록 합니다.
이 메커니즘을 구현하면 포함 파일에 대한 직접 액세스를 효과적으로 방지하여 무결성과 보안을 보장할 수 있습니다. 무단 실행을 방지합니다.
위 내용은 포함된 PHP 파일에 대한 직접 액세스를 어떻게 방지할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!