2011-11-17 2 views
6

에서 원격 서버에서 파일 및 폴더 목록을 얻기 나는 실행하면 :는 PHP

$url='foldername'; 
$dir = opendir($url); 

//List files in images directory 
while (($file = readdir($dir)) !== false) 
    { 

    echo "filename: " . $file . "<br />"; 
    } 
closedir($dir); 

... 그것은 출력 :

filename: a.gif 
filename: file.html 
filename: g.gif 
filename: gg.html 

내가 다른 서버에있는 모든 파일과 폴더를보고 싶다 URL :

$url="http ://example.com" 

example.com에서 파일 및 폴더 이름을 어떻게 찾을 수 있습니까?

+0

당신이 정말로 모든 파일과 폴더 (불가능/답변을 참조) 당신은/서버에서 모든 파일과 파일을 나열하려는에 대한 URL을 검색 하시겠습니까 webspace? –

답변

6

http://은 디렉토리 목록을 지원하지 않습니다. 당신이하려는 일은 불가능합니다.

+0

그러면 어떻게 열 수 있습니까? 파일을 여는 기능이 있습니다. – vineeth

+0

@vineeth : 내가 말했듯이 http 서버의 원격 디렉토리 목록을 가져 오는 것은 불가능합니다. FTP 액세스와 같이 서버에 대한 다른 경로가 없으면 운이 없게됩니다. –

4

물론 불가능합니다. 그렇지 않으면 누군가가 디렉토리 트리를 탐색 할 수 있기 때문에 웹 사이트가 훨씬 취약해질 수 있습니다!

FTP 또는 SSH와 같은 다른 웹 사이트에 액세스 할 수 있다면 가능합니다.

8

가능합니다. 그냥 상자 밖에 가야 해. 이것에 대한 유일한 결점은 인덱스 출력입니다.

<? 
    $matches = array(); 
    preg_match_all("/(a href\=\")([^\?\"]*)(\")/i", get_text('http://www.website.com/ images/'), $matches); 
    foreach($matches[2] as $match) 
    { 
     echo $match . '<br>'; 
    } 

    function get_text($filename) 
    { 
     $fp_load = fopen("$filename", "rb"); 
     if ($fp_load) 
     { 
      while (!feof($fp_load)) 
      { 
       $content .= fgets($fp_load, 8192); 
      } 
      fclose($fp_load); 
     return $content; 
     } 
    } 
?> 
+1

저는 [2]가 무엇인지 궁금합니다. 감사 – KarenAnne

0

PHP가 불가능할 수도 있습니다.하지만 할 일이있는 프로그램이 있습니다. "intellitamper"가 그 중 하나입니다. http://www.softpedia.com/get/Internet/Other-Internet-Related/IntelliTamper.shtml < - 링크입니다. 윈도우 7

    • 그 나던 작업 u는 PHP와 같은 서버 측 파일을 얻을 수 없습니다.
    • u는 폴더, html, js 또는 이미지 파일 만 볼 수 있습니다.

    그렇지 않으면 천국이 될 것입니다. 누구나 웹 사이트를 해킹 할 수 있습니다.

  • 0

    이 일부 서버에서 잘 작동합니다

    function get_text($filename) { 
    
        $fp_load = fopen("$filename", "rb"); 
    
        if ($fp_load) { 
    
          while (!feof($fp_load)) { 
           $content .= fgets($fp_load, 8192); 
          } 
    
          fclose($fp_load); 
    
          return $content; 
    
        } 
    } 
    
    
    $matches = array(); 
    
    preg_match_all("/(a href\=\")([^\?\"]*)(\")/i", get_text('https://www.example.com/'), $matches); 
    
    foreach($matches[2] as $match) { 
        echo $match . '<br>'; 
    }