cdi
Новичок
Корректно отдать кешированный файл.
Есть локальная сетка и корпоративный сайт, доступ к которому осущ. через эту сеть. Общего инета нет. Задача : осущ. механизм получения из инета определенного (динамически изменяющегося) файла и отдавать его при запросе. Делаю сие творение так:
Но браузер предлагает сохранить файл, взамен его отображения. Возможно, необходимо применение иного пакета вместо HTTP_Download ?
Хотя этот вариант работает:
Есть ли готовый пакет?
Спасибо!
Есть локальная сетка и корпоративный сайт, доступ к которому осущ. через эту сеть. Общего инета нет. Задача : осущ. механизм получения из инета определенного (динамически изменяющегося) файла и отдавать его при запросе. Делаю сие творение так:
PHP:
<?php
ini_set('include_path', ini_get('include_path').';./inc/PEAR/');
/*------------ получение и кеширование данных --------*/
require_once('Cache/HTTP_Request.php');
$options = array(
'cache_dir' => './temp/cache/'
);
$cache = &new Cache_HTTP_Request('http://sub.rss.ru/index.jpg', null, 'file', $options, 3600);
$cache->sendRequest();
$headers = $cache->getResponseHeader();
/*------------ отдача файла --------*/
require_once('HTTP/Download.php');
$params = array (
'data' =>$cache->getResponseBody()
);
$download = &new HTTP_Download;
$download->setParams($params);
$download->setContentType($headers['content-type']);
//$download->headers = array_merge($download->headers, $headers);
$download->send();
exit;
?>
Хотя этот вариант работает:
PHP:
<?php
ini_set('include_path', ini_get('include_path').';./inc/PEAR/');
/*------------ получение и кеширование данных --------*/
require_once('Cache/HTTP_Request.php');
$options = array(
'cache_dir' => './temp/cache/'
);
$cache = &new Cache_HTTP_Request('http://sub.rss.ru/index.jpg', null, 'file', $options, 3600);
$cache->sendRequest();
$headers = $cache->getResponseHeader();
/*------------ отдача файла --------*/
foreach($cache->getResponseHeader() as $k => $v) {
header("$k: $v");
}
print $cache->getResponseBody();
exit;
?>
Спасибо!