2012-12-21 2 views
2

내 웹 사이트에서이 이상한 행동을 관찰하고 있습니다. 내가 예상대로 http://www.domain.in/contact.php 같은 URL에 주소를 입력 할 때이상한 행동 - domain.in/file/file에 대한 액세스가 허용됩니다.

내가 내 웹 서버

root 
login.php 
contact.php 
myaccount.php 
. 
. 

에서 다음 디렉토리 구조를 가지고, 난 내 contact.php 화면에 렌더링 얻을. 내가 .. URL을 여기에 http://www.domain.in/contact.php/myaccount.php을 다음 주소를 입력하려고 할 때 는하지만 난 일이 아래에서 뭔가를 기대 :

1) a 404 page to be displayed 
2) a redirect to contact.php 

하지만 그 대신이 페이지 myaccount.php는 방식으로 내가하고자하지 offcourse, 렌더링됩니다 그럴거야.

기본적으로 htacess 파일을 사용하는 것을 막을 수 있을지는 모르겠지만이 시나리오에서 작동 할 수있는 규칙은 무엇인지 파악할 수 없습니다.

어떤 도움이 가장 환영받을 것입니다.

답변

0

마지막 질문을 무시하고 질문을 완전히 읽지 않았습니다. myaccount.php

<?php 
$host = $_SERVER['HTTP_HOST']; 
$self = $_SERVER['PHP_SELF']; 
$query = !empty($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : null; 
$url = !empty($query) ? "http://$host$self?$query" : "http://$host$self"; 
$redirect = '<meta http-equiv="refresh" content="4;url=http://www.domain.in/contact.php">'; 
if ($url=="http://www.domain.in/contact.php/myaccount.php") echo $redirect; 
// The Rest of the page here 
?> 
+0

의 상단에이를 추가

봅니다 그냥 내 자신이 테스트, 그리고 ** ** 작업을 수행합니다. – Ron

+0

안녕하세요, 빠른 답변과 훌륭한 솔루션을 주셔서 감사합니다. 귀하의 접근 방식을 이해합니다. 하지만 문제는 이런 종류의 행동이 제 웹 사이트에서 일반적이라는 것입니다. 이 버그입니까? 또는 자연스런 행동입니까? 그래서 내가 당신의 접근 방식을 취해야한다면, 내 웹 사이트의 다른 모든 파일에이 코드를 넣어야합니다. 이 문제를 해결할 수있는 htaccess 방식을 사용할 수 있는지 알고 싶습니다. 다시 귀하의 도움에 감사드립니다. –