Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Редирект 301

00 голосов
8
Расскажите пожалуйста как сделать 301 редирект. Что где прописать? Я знаю что необходимо в .htaccess поставить со старых страниц перенаправление на новые. Но это лишь общие слова... а как это записывать?
я никогда редиректа еще не делала, не хочиться ошибиться, подскажите плиз код который надо прописать...
И можно ли хотябы "пачками" ставить, например 10 старых страниц с динамическим урлом на одну новую? не вредно ли это?

Зарание спасибо!
спросил 29 Июнь, 13 от TROPIKANA (160 баллов)

8 Ответы

00 голосов
ответил 29 Июнь, 13 от smileplz (8,020 баллов)
00 голосов
хо, спасибо, а то я конечно не догадалась в поисковике поискать)
мда... по сути, на Все вопросы на форуме можно так отвечать!

Уточняю вопрос, именно в БИТРИКС. Насколько я понимаю, можно через админку.
Правильно ли я понимаю, что можно в разделе "обработки адресов" настроить?
без того чтобы конфиг править?
или ТОЛЬКО через .htaccess?
к томуже, если хоть чуток ошибусь в коде у меня ведь сайт полетит... сегодня итак его чуть не убила...
ответил 30 Июль, 13 от TROPIKANA (160 баллов)
00 голосов
В разделе "Обработка адресов" настраиваются правила для ЧПУ.
Вам нужен именно .htaccess.

Править можно через админку, либо любым другим удобным способом (ftp,ssh). Даже если сайт "полетит", по ftp можно все вернуть на место.
ответил 01 Ноя, 13 от smileplz (8,020 баллов)
00 голосов
Если старые страницы существуют, можно в их начале после хедера написать LocalRedirect('новый адрес'); (в режиме php)
ответил 07 Фев, 14 от Eddie (2,060 баллов)
00 голосов
<?LocalRedirect(новый адрес)) ?>
прописал эту конструкцию в редакторе php и у меня вообще белый лист теперь показывает(((
Что я не так сделал?

Код
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Title");
?>

<?LocalRedirect(новый адрес)) ?>
текст старой страницы......
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?> 

Как то так получилось((((
ответил 27 Май, 14 от AasukaA (100 баллов)
00 голосов
Цитата
Дмитрий Якинцев пишет:
<?LocalRedirect(новый адрес)) ?>

С двумя закрывающими скобками? PHP такое не поймёт.

Кстати, раз уж зашла речь о LocalRedirect(). Этой функции можно передать статус респонса:
function LocalRedirect($url, $skip_security_check=false, $status="302 Found")
Функция описана в /bitrix/modules/main/tools.php
ответил 24 Сен, 14 от Ly (4,580 баллов)
00 голосов
Цитата
Алексей Гришин пишет:
Код
<? 
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); 
$APPLICATION->SetTitle("Title"); 
?> 

<?LocalRedirect(новый адрес)) ?> 
текст старой страницы...... 
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>

Лучше так:
Код
<?
// подключение служебной части пролога
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
LocalRedirect(новый адрес);
// подключение служебной части эпилога
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
?>
ответил 28 Янв, 15 от Fka (340 баллов)
00 голосов
Max Pryazhevsky, к сожалению по ftp не вернуть...
если через "Обработку адресов", то это и на старом сайте должны быть ЧПУ?
или на старом могут быть динамические урлы, а на новом должны ЧПУ?
ответил 12 Май, 15 от TROPIKANA (160 баллов)

Похожие вопросы

0 голосов
2 ответов
спросил 01 Май, 14 от ALOTAR (100 баллов)
0 голосов
4 ответов
спросил 07 Янв, 14 от TalisSa (100 баллов)
0 голосов
4 ответов
спросил 31 Дек, 13 от McArchy (100 баллов)