2011-06-10 5 views
0

그래서 Apache에서 실행되는 PHP 기반 사이트가 있습니다. 내가 말하는 페이지의 URL은 다음과 같습니다. http://www.example.com/?task=0&fw=FW_1W9AigHcAzgtjhBNc6W1QW fw에 대한 긴 문자열이 무작위로 생성됩니다. ?fw=FW_1W...부터 항상 36 자입니다. 누군가가 이것에 아무 것도 추가하면 중대한 오작동이 발생하고 영구적 인 손상을 입습니다 (이상한 상황, 나는 알고 있습니다 ...). 내가 뭘 찾고있는 내 PHP 스크립트는 URL의 문자의 특정 숫자 후에 모든 것을 무시하게 만드는 것입니다. 아니면 $fw의 경우 25 자 이후의 모든 내용을 무시합니까? 나는 거의 프로그래밍을 이해하지만 난이 가능해야한다처럼 ... 많은 :)URL 쿼리 길이를 제한 하시겠습니까?

답변

2

어떤 이상한 설정 감사합니다 ...하지만 당신이 수 있다고 생각 :

$fwstring = substr($_GET['fw'],0,25); //get 25 chars from index 0 of $_GET['fw'] 
2

하는 스크립트에서 멀리 나쁜 요청을 계속 :

<?php 
if (strlen($_GET['fw'])!=36) { 
    header("Status: 400 Bad Request", true, 400); 
    exit(); 
} 
// your code ...