Attachment Mod by Acyd Burn: редирект ссылок на PHPBB3

Полезные скрипты
Ответить
Аватара пользователя
mihas
Администратор
Сообщения: 1371
Зарегистрирован: 18 авг 2004, 16:58
Откуда: Москва
Контактная информация:

Attachment Mod by Acyd Burn: редирект ссылок на PHPBB3

Сообщение mihas »

После конвертации форума из phpbb2 в phpbb3 с уже предустановленным модулем вложений старые ссылки на вложения, размещенные вне форума или на форуме в виде простых ссылок а не вложений, перестают работать. Старая ссылка выглядела так:а новая ссылка выглядит так:Значит нужен простой редирект. Его можно реализовать в файле .htaccess или на PHP или просто на javascript. Вот мое решение на javascript.
Создайте пустой файл download.php и впишите туда четыре строки кода:

Код: Выделить всё

<script language="javascript">
var redirecter = location.search;
window.location = 'http://www.cielab_xyz_example/forum/download/file.php'+redirecter;
</script>
Поместите этот файлик в корневую директорию форума phpbb3. Все. Ссылки на старые аттачи за пределами форума будут перенаправляться на новый адрес скрипта.
Не забудьте заменить example на путь к своему сайту.

Однако реализация переадресации на javascript возможно не лучшее решение: поисковики могут что-нибудь не то подумать. На php наверное сделать редирект корректнее. Создайте пустой файл download.php и впишите туда шесть строк кода:

Код: Выделить всё

<?php
$redir = $_GET['id'];
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.cielab_xyz_example/forum/download/file.php?id=" . $redir);
exit();
?>
Поместите этот файлик в корневую директорию форума phpbb3. Все. Здесь php корректно сообщит браузеру, что файл теперь лежит в новом месте, но это тот самый файл а не его вторая копия. Заголовок HTTP/1.1 301 Moved Permanently - это важно.
Ответить

Вернуться в «PHP»