2015-01-05 2 views
3

내 질문에 대한이 특정 작업에 대한 PHP 보안 :디렉토리 내용을 PHP로 가져오고 JQuery를 사용하여 읽을 수 있습니까?

내 웹 서버의 특정 디렉터리에서 모든 json 파일을 끌어 오기 자바 스크립트를 사용하고 싶습니다. 그래서 같이했을 : 나는이 PHP 스크립트를 사용하여 모든 올바른 파일 이름을 당겨 ("GET-data.php을") :

<?php 
echo json_encode(glob('*.json')); 
?> 

가 그럼 난과 자바 스크립트로 해당 배열을 이동

var oReq = new XMLHttpRequest(); 
oReq.onload = function() { 
    fileNames = JSON.parse(this.responseText); 
}; 
oReq.open("get", "get-data.php", true); 
oReq.send(); 

function getMapInfo(fileName){ 
    $.get(fileName, function(result) { 
     var map = JSON.parse(result); 
     mapData.push(map); 
    }); 
} 

여기에서이 코드의 일부 가지고 : 그럼 난 배열로 파일을 읽을 다음 사용 How to pass variables and data from PHP to JavaScript? 을 나는 XSS 조금 위로 읽고 herehere 그리고 "신뢰할 수없는 데이터"는 사용자가 입력 한 데이터로 스크립트에서 실행될 것이라고 저는 알고 있습니다. 내 위의 솔루션은 안전하지 않은 데이터를 포함하지 않는다고 생각합니다. 서버에 이미있는 파일 만 가져 오기 때문입니다. 맞습니까?

전반적으로 제 질문은 입니다. 내 코드가 내 서버에서 여러 개의 알 수없는 파일을 검색 할 수있는 안전한 방법입니까? 결국 나는 위의 스크립트가 읽을 수 있도록지도 데이터를 서버에 "저장"하여 사용하기를 원합니다.

정말 감사합니다,

요르단

+2

안전해야합니다. 파일 이름 목록을 JSON으로 클라이언트에 보내고 사용자가 민감한 데이터가 포함 된 다른 파일을 다운로드 할 수 있도록 파일 이름이나 폴더를 선택하도록 허용하지 않는 한, 괜찮아. – adeneo

+0

좋아요! 나는 조금 새로운 웹 보안 때문에 불안하다. 그러나 나는 이것을 많이 가지고있어 기쁘다. :) – Jordan

+3

장님과 과실보다는 웹 보안에 신경을 쓰는 것이 더 좋다. – charlietfl

답변

1

예,이 완벽하게 안전합니다. 당신은 단지 보안이 선택 될 수있는 것을 제한하거나 필터링함으로써 보안이 PHP 코드의 일부임을 보증 할 필요가있다. (당신은 괜찮을 것이다.) 기존 솔루션은 완벽하게 안전합니다. 또한 .htaccess 파일을 수정하여 웹 사이트의 디렉토리를 보는 다른 사용자에 대해 우려 할 경우 폴더 내용을 숨길 수 있습니다.

관련 문제