2015-01-15 3 views
0

나는 원격 하나, 그들은 자신의 서버에URL을 서버 또는 원격 서버 (원격)에서 구별하는 방법은 무엇입니까?

  • uploaded- 수 있습니다 자신의 다운로드 파일의 사용자 입력 (즉 : example.com/files/filename.ext)
  • 을 복용하거나하고 있습니다. (즉 : external.org/someone/somewhere/filename.ext)

(일부 과정) 다운로드 버튼을 구현 I의 trying 때, 그때 원격 서버에서 다운로드하는 파일과 같이되지 came to know. 그래서 URL이 내 서버인지 아니면 외부 서버인지 확인해야합니다.

나는 간단한 조건에 모두 다음을 구별 할 수있는 경우 I가 흐름을 통과 할 수 있는지 여부 :

답변

1

파일의 URL에서 호스트 이름을 얻고 비교 웹 호스트 이름으로

$fileHost = parse_url("example.com/files/filename.ext", PHP_URL_HOST); 
//$fileHost == "example.com" 
if($fileHost == $myHost) 
{ 
    //this is local file 
} 
else 
{ 
    //this is external file 
} 

ca n은 당신의 PHP가

$myHost = $_SERVER['HTTP_HOST']; 

http://php.net/manual/en/function.parse-url.php

로하면 myHost를 얻을 수 $ 할 수 있도록
관련 문제