301 редирект

GU
На сайте с 26.10.2011
Offline
74
595

Добрый день, подскажите, на сайте на голом хтмл порядка 2000 страниц. Решил поменять урлы. Как массово сменить? Надо каждую страницу прописывать в htasses?

Может можно каким то правилом?

Сейчас страницы имеют вид site.ru\papka\nomer_kategoriya\nomertovara

Хочу сделать site.ru\papka\imya_kategoriya\imyatovara

Партнерка для юридических, туристических, кредитных и др. сайтов (http://goo.gl/ZntVAv)
S
На сайте с 30.09.2016
Offline
469
#1
GUZU:
Может можно каким то правилом?

А откуда апач узнает, какое имя у номера? 😕

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
M
На сайте с 04.12.2013
Offline
223
#2

Он хочет рерайтить каждый адрес 🤪

---------- Добавлено 17.01.2019 в 14:38 ----------

GUZU, ссылки-то на страницах все равно останутся старыми. Лучше сразу натянуть на динамический каркас.

---------- Добавлено 17.01.2019 в 14:43 ----------

P.S. Для формирования ссылок лучше использовать спец. функцию, выполняющую «обратное связывание». Вдруг вы потом опять захотите поменять ссылки.

---------- Добавлено 17.01.2019 в 14:49 ----------

P.P.S. И я надеюсь, вы в курсе, что в плане SEO менять адресацию на работающем сайте самоубийственно. Только редирект может облегчить положение. Но делать редирект при переходе по внутренним ссылкам – идиотизм за редкими исключениями, т.е. ссылки на страницах сайта нужно по-любому править.

Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
Маленко Иван
На сайте с 11.05.2016
Offline
33
#3
miketomlin:
делать редирект при переходе по внутренним ссылкам – идиотизм за редкими исключениями, т.е. ссылки на страницах сайта нужно по-любому править.

согласен

а если внутренняя перелинковка сделана не руками, а софтом, то тут будет проще

D.iK.iJ
На сайте с 26.05.2013
Offline
224
#4

Засунуть во все старые страницы редирект на PHP при помощи автозамены Нотпад++ :)

Ну и должно работать что-то вот такое в Хитачесс:

Redirect /papka/nomer_kategoriya1 http://site.ru/papka/imya_kategoriya1
Redirect /papka/nomer_kategoriya2 http://site.ru/papka/imya_kategoriya2
Адаптивный дизайн в 2 строчки ( https://dikij.com/wm/adaptaciya-saytov.php ). + Принимаю заказы любой сложности ( https://searchengines.guru/ru/forum/926323 ). 💎 Еще я делаю классные кулоны с опалами ( https://mosaicopal.ru/ ).
Skom
На сайте с 02.12.2006
Offline
166
#5

Пихать 2000 строк в htaccess - садизм по отношению к серверу и мазохизм по отношению к себе ))

Если есть таблица соответствия имён и номеров, то одна строчка в конфиге nginx и несколько строк в пхп.

Чтобы всё пулей летало даже на калькуляторе, не заморачиваться с sql, а пихнуть эту таблицу в redis. Ну, либо, если opcache стоит, то можно вообще в массив засунуть и прям в теле скрипта оставить.

Перемещаете куда-нибудь все папки с цифровыми именами.

С помощью того же пхп распихиваете всё по новым папкам.

В nginx что-нибудь, типа try_files $uri $uri/ /redirect.php?$args;

Если nginx не стоит, то в апаче что-то похожее в две строчки пишется.

С апачем уже лет 15 не работаю, поэтому х.з..

1. Клиент запрашивает site.ru/papka/1/2

2. nginx/apache смотрит - есть такая папка или нет. Если есть, отдаёт её. Если нет, отправляет запрос в redirect.php

3. redirect.php разгребает request_uri и смотрит ваши цифирки в таблице. Если есть соответствие, то 301 клиенту на новый адрес. Если нет, то 404.

Cras amet qui numquam amavit quique amavit cras amet

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий