>  기사  >  백엔드 개발  >  Ajax에서 호출한 파일에 대한 직접 액세스를 방지하는 방법은 무엇입니까?

Ajax에서 호출한 파일에 대한 직접 액세스를 방지하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-13 00:42:02769검색

How to Prevent Direct Access to Files Called by Ajax?

Ajax에서 호출한 파일에 대한 직접 액세스를 제한하는 방법

쿼리에 표시된 대로 Ajax를 활용하여 PHP 코드를 호출할 때 데이터는 전송되는 정보는 요청 헤더 검사를 통해 노출될 수 있습니다. 데이터는 기밀이 아닐 수 있지만 악용 가능성은 여전히 ​​남아 있습니다.

이러한 문제를 해결하기 위한 일반적인 솔루션은 HTTP_X_REQUESTED_WITH 헤더를 활용하는 것입니다. 일반적으로 Ajax 요청/프레임워크에 의해 설정되는 이 헤더를 사용하면 Ajax 요청과 Ajax가 아닌 요청을 구별할 수 있습니다. 다음 코드 조각은 해당 구현을 보여줍니다.

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')) {
    // Allow access within Ajax requests
} else {
    // Block access outside of Ajax requests
}

Javascript 코드에서 이 헤더를 수동으로 설정할 수 있습니다.

var xhrobj = new XMLHttpRequest();
xhrobj.setRequestHeader("X-Requested-With", "XMLHttpRequest");

위 내용은 Ajax에서 호출한 파일에 대한 직접 액세스를 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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