301 Редірект популярні шаблони

301 Редірект популярні шаблони

Оскільки веб-сервер Apache є найбільш поширеним, то всі шаблони, наведені в цій статті, належать саме до нього, а конкретно - повинні прописуватися в кореневому файлі .htaccess. Перед використанням шаблонних 301 редиректів переконайтеся в тому, що в Apache підключений модуль mod_rewrite (файл httpd.conf).

Для використання 301 редіректу спочатку в перших рядках файлу .htaccess прописуються директиви, необхідні для роботи модуля mod_rewrite:

Options + FollowSymLinks
RewriteEngine On
RewriteBase /

Розглянемо типові правила перенаправлень.

Або ж спрощений варіант:

Або альтернативний спрощений варіант:

Варто також відзначити, що іноді правила працюють навіть якщо крапки не екрановані за допомогою зворотного слеша, але не варто цим зловживати, на деяких серверах це може призвести до помилки.

Склеювання індексного сторінки з коренем сайту

Такий тип редиректів часто доставляє проблеми в разі, якщо використовується CMS, що перенаправляє всі запити до сайту на індексну сторінку. Додавання директиви в .htaccess файл тоді призведе до циклу нескінченних перенаправлень. Найпростішим виходом із ситуації буде вставка невеликого фрагмента коду в початок індексного сторінки (наприклад index.php):

header ( "Location: /", TRUE, 301);
exit ();

Такий же редирект може використовуватися і для інших розширень головної сторінки, таких як index.html, або наприклад index.phtml.

Редирект з поддомена на підпапку

Редирект з папки домену на піддомен

Якщо необхідно навпаки, перенаправити користувача з папки на піддомен, то використовуйте наступний шаблон:

Редирект з одних розширень файлів на інші

RewriteRule ^ (. *) \. Html $ $ 1.php [R = 301, L]

Редирект на інший сайт

Створюючи новий сайт, буває необхідність зробити його основним дзеркалом, перенаправляючи користувачів зі старого домену на новий. Для цього можна використовувати шаблон наведений нижче.

Всі сторінки старого домену будуть перенаправлені на відповідні сторінки нового.

301 Редірект динамічних сторінок

Редіректи кириличних і .рф доменів

Всі описані вище правила справедливі і для доменів написаних кирилицею. Однак, при створенні перенаправлень кириличні домени краще замінювати так званим Punycode. Для цього можна скористатися одним з онлайн-сервісів конвертації WhiteWhois.

Отримане закодоване доменне ім'я можна легко використовувати для будь-якого шаблону 301 редиректу, описаного вище.

Як Яндекс вийшов на урли без слеша? Не знаю. Скрипт сайту справно генерує все урли зі слешем в кінці. Посилання які купую теж завжди зі слешем. Ймовірно з'явилися якісь природні беки без слеша. Але зараз не про це.

Питання в тому, як зробити 301 редирект зі сторінок без слеша на сторінки слешем в кінці. Прописувати вручну редирект на кожну сторінку не варіант. Занадто багато сторінок і кількість їх буде тільки рости. Мабуть потрібно якось удосконалити правила mod_rewrite, але у мене не досить знань для цього. Може хто підкаже що можна зробити?

Думаю ось такий синтаксис крутити

RewriteCond% /firma.php?id=$ HTTP / RewriteRule ^ firma.php? Id = $ catalog / item ([0-9] +). Html [R = 301, L]

Правда він не працює, а мені не вистачає знань його змусити - розумію, що в районі «item ([0-9] +). Html» повинна стояти змінна, яка вказує на потрібні ID, але ось де і як ...

Підкажіть, як зробити редирект для динамічних сторінок, наприклад:
site.com.ua?p=flowers -> site.ua?p=flowers

Вітаю!
Підкажіть, як в .htaccess встановити редирект зі старих сторінок на нові:
з /site.ru/old.html на sait.ru/direktoriya/new.php

І ще питання: коли можна буде старі сторінки видаляти? Після установки редиректу або після переиндексации нових?

Здрастуйте, у мене біда є сайт все біло добре в індексі в яндексеа, всі сторінки біли без слеша, і небіло дублів сторінок.

Привіт, Віталій.
У мене така проблемка- переробляю весь сайт в динамічний, структура майже не змінюється (додається кілька нових сторінок з блоками, тому що використовую include) - тобто міняю всі існуючі сторінки з html на php.

Я так розумію мені в файл .htaccess потрібно вставити тільки цей код? -
Options + FollowSymLinks

RewriteBase / RewriteRule
^ (. *). Html $ $ 1.php [R = 301, L]

Або щось ще потрібно зробити?

Як зробити такий редікт 301?

спасибі чекаю допомоги

Добрий день, підкажіть будь ласка як зробити редирект зі сторінок типу
/ Listings / doma / на сторінки / filtrs / t-doma /

Схожі статті