2013-09-12 2 views
-1

У меня есть субдомен sub.domain.com. субдомен указывает на каталог root/sub моего корневого каталога на моем веб-сервере. теперь у меня есть pdfs в другом каталоге на сервере root/pdf. Как я могу проверить, существует ли конкретный pdf-файл, и если он существует, я хочу скопировать файл в временный каталог субдомена.проверить и прочитать файл из поддомена

, если я называю саб PHP скрипт/check.php в попытке проверить ФРП, которая существует:

$filename = "http://www.domain.com/pdf/1.pdf"; 
if (file_exists($filename)) 
{ 
    "exists"; 
} 
else 
{ 
    "not exists"; 
} 

Он всегда показывает: не существует. Если я возьму url и поместил его в браузер - будет показан pdf.

Как мой php-скрипт в файлах доступа к подпапкам находится в корневом каталоге или в корне/pdf?

свиданья Jogi

+0

ОТВЕТИЛ Ваш вопрос сейчас? –

ответ

0

file_exists() функция не работает. Он не использует удаленные URL-адреса.
Эта функция используется для проверки файла, который существует в файловой системе.

Проверьте руководство here

Сделать использование Curl для достижения этой цели.

<?php 
    $ch = curl_init("https://www.google.co.in/images/srpr/logo4w.png"); //pass your pdf here 

    curl_setopt($ch, CURLOPT_NOBODY, true); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false); 
    curl_exec($ch); 
    $retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
    curl_close($ch); 
    if($retcode==200) 
    { 
     echo "exists"; 
    } 
    else 
    { 
     echo "not exists"; 
    } 

    ?> 
+0

ОК, спасибо. но как я могу скопировать файл в мой sub-dir? – user1121575

+1

@ user1121575 что вы уже пробовали? –

+0

'system (" cp http://www.domain.com/pdf/1.pdf http://www.domain.com/sub/temp/1.pdf ")' – user1121575

0

file_exists() выглядит локально на машине, если файл существует. Но то, что вы делаете, - это использование URL-адреса.

Так как вы говорите, ваш скрипт находится в корневой папке, необходимо Меняются

$filename = "http://www.domain.com/pdf/1.pdf"; 

в

$filename = realpath(dirname(__FILE__)) . "/pdf/1.pdf"; // first part gets current directory 
+0

мой скрипт не находится в корневой папке. он находится в/sub-папке – user1121575

+0

@ user1121575 Хорошо, тогда выполните: '$ filename = realpath (dirname (__ FILE__)). «/../ pdf/1.pdf»; 'The .. вернет вам один каталог назад. –

Смежные вопросы