Я хочу перенаправить все запросы файла фида (*. Xml) в скрипт php, который отрегулирует URL-адрес запроса и затем выдает результат. В настоящее время у меня есть скрипт, который делает это, но заканчивается бесконечным циклом перенаправления. Я понимаю, что Apache будет запрашивать скорректированный файл снова и снова, если у меня не будет условия для его остановки, поэтому я добавил условие к файлу .htaccess, чтобы обрабатывать файл только в том случае, если он возник из root. Я думал, что эта концепция была хорошей, но все же была та же ошибка. Последняя часть скрипта следующим образом: ...Перенаправление фидов в другой каталог с использованием .htaccess и mod_rewrite
$fileUrl = $row['file_url'] . $feedFile;
}
header('Location: ' . $fileUrl);
header('Content-type: text/xml');
header('Content-length: ' . filesize($fileUrl));
header('Content-Disposition: filename= '.$fileUrl);
header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');
readfile($fileUrl);
>
.htaccess файл выглядит следующим образом: Options + FollowSymlinks
RewriteEngine On
RewriteBase/
#Only process .xml requests if they are from root
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ([a-zA-Z0-9]+\.xml$) checkForAuth.php?file=$1 [QSA]
Я получаю следующее сообщение об ошибке с использованием castfeedvalidator:
Предупреждение: копия (http://www.example.com/SFAPremium.xml?name=ejleeson) [function.copy]: не удалось открыть поток: Перенаправление lim он достиг, отбрасывание в /home/podcasts/public_html/castfeedvalidator/ajax/validate.php на линии 243
Спасибо, Dion
Какой URL-адрес вы вводите в браузере? – anubhava
Этот тип - http://example.com/afeed.xml?name=aname. На самом деле, читатель канала будет запрашивать URL-адрес. – dion