Коллеги, всех приветствую! Всем доброго здравия! Вот какая штука приключилась: Есть Облачная система, все пользователи заходят под Логином-Паролем, Используются сессии реальная структура такая scripts/ htmldoc/ files/ index.php лежит , в htmldoc/ эта папка является корнем для доменного имени в папку files/ падают все файлы, с которыми идет некая работа в php-скриптах файл, стало быть, сохраняется (удачно) таким путем: $filecode=[тело файла из загрузки на сервер]; $filename="название.расширение"; // название - латинское название, // расширение - правильное расширение (.jpg, .pdf и т.д.) $f=fopen("../files/$filename","w"); fwrite($f,$filecode); fclose($f); при сохранении файла ему присваивается уникальный индекс codefile с занесением в базу данных информации, кто из пользователей имеет к файлу право все файлы сохраняются корректно в ftp их видно, если их скачать по ftp, открываются как и должны. Теперь проблема: пользователи открывают файлы по ссылкам вида href="download.php?codefile", где download.php - это скрипт, лежащий в htmldoc/, а codefile - это индекс по задаче нужно, программно проверить имеет ли пользователь право на просмотр файла, и если имеет, то выдать ему в браузер этот файл вот часть download.php: не буду описывать проверку на "право" она работает, вот что после всех проверок: $f="../files/$file"; // путь + файл.расширение if (file_exists($f)) { include("../scripts/get_mime_type.include"); // скрипт определения mime_type $mime=get_mime_type($f); // работает правильно if (ob_get_level()) ob_end_clean(); header("Content-Type: $mime"); @readfile($f); } и вот какая штука: картинки прямо в браузере показываются, а .pdf - пустой белый лист выводит, даже не ругается .doc и .xls - браузер ругается: нет говорит такого файла, причем пишет "не могу найти файл site.ru/download.php?codefile" думаю, чего-то я не дописал в этот блок: if (ob_get_level()) ob_end_clean(); header("Content-Type: $mime"); @readfile($f); или вообще, может, нельзя выдать файл из-под "сверхкорня"? Кто, может сталкивался с подобной ситуацией, подскажите, пожалуйста, какие варианты решения Заранее, Спасибо!
можно откуда угодно, главное чтоб политика безопасности разрешала. повысьте уровень сообщений и почитайте что именно по поводу неработающих запросов сообщается в журнале ошибок.