Как прописать 301 редирект в htaccess
Со страниц вида site.com/tags/79.html на site.com/tags/79-stranica.html
Id у всех страниц разные, надо просто чтобы на туже страницу но с другим ЧПУ уходило.
- 24.06.2016 16:05
- 24.06.2016 16:08Код HTML:
Redirect 301 /tags/79.html http://site.com/tags/79-stranica.html
- 24.06.2016 16:18
- 24.06.2016 16:34
Примерно, так:
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 1 сообщение(ий)):У вас нет прав чтобы видеть скрытый текст, содержащийся здесь. - 24.06.2016 17:00
- 24.06.2016 17:32
- 24.06.2016 17:49
Coder,
Виноват, я подумал что логично.
Про какую точку Вы говорите?
При верхнем коде со "stranica" , а при RewriteRule ^tags/(.+)\.(.+)$ tags/$1-\.$2 [R=301,L] без
Редиректит куда то далеко, в итоге 404
_http://site.com/home/r/hosting/site.com/public_html/tags/1246-.html - 24.06.2016 19:24
Правильно редиректит и заменяет, вроде как. Нужно пробовать и смотреть, что вам точно нужно - все это навскидку:
чтобы алиас страницы обрабатывался, его нужно включать (если он есть) во вторую часть регулярки.
В общем, четко определите логику, посмотрите возможные варианты - если алиас у вас не передается, то его можно присоединять только вручную.
Посмотрите в гугл регулярные выражения в htaccess - 24.06.2016 20:57
Coder,
А этот кусок должен появляться?
_http://site.com/home/r/hosting/site.com/public_html/tags/1246-.html в ссылке? из-за него же и не идет куда надо.
Алиас есть.
Можно по русски). как это не передается и что значит вручную, ведь линк сам формируется.
Суть в том, что есть две страницы
site.com/tags/79-alias.htm
и
site.com/tags/79.html на обеих одинаковый контент, но дублями их поисковики не видят, но на первую, закуплены ссылки и она была в индексе, а тут вдруг вылетела почему не понятно, а вторая в индексе.
Таких тегов под тысячу, на них можно перейти как просто с номером тега (вторая ссылка), так и с цифрой и алиасом (первая ссылка). Поэтому нужно средиректить, как прописать это хз, поэтому тему и создал. В поисковике конкретного решения не нашел, а сам выражение не составлю.Последний раз редактировалось Optilife; 24.06.2016 в 21:35.
- 25.06.2016 11:45
Проблема в том, что алиас не определяется в первой части, и потому подставить во вторую, не получится - нельзя же сделать, например, так :
RewriteRule ^/tags/(.+)\.(.+)$ /tags/$1-(.*)\.$2 [R=301,L]
Пояснение:
^/tags/(.+)\.(.+)$ - получаем все по пути и разбиваем нато, что до точки, и то, что после
/tags/$1-stranica\.$2 - перенаправляем на ту же папку, и берем то, что в первой части до точки ($1), добавляем дефис и вручную алиас, ставим точку и пристыковываем то, что определено в первой части вторым блоком ($2)
этот кусок должен появляться? - по поводу этого - попробуйте поставить слэш перед папкой (/tags/) - почему-то вытаскивается абсолютный путь на хостинге, что, вообще-то, быть не должно вообще при любом перенаправлении такого типа - возможно, стоит об этом задуматься.
PS Все, что мог, сказал. Желаю вам удачи. Пробуйте - решение, если оно есть, обязательно появится.Спасибо сказали:
Optilife(25.06.2016),
Тэги топика:
Похожие темы
| Темы | Раздел | Ответов | Последний пост |
|---|---|---|---|
Если прописать редирект в панели домена, домены склеятся? | Вопросы от новичков | 0 | 08.05.2013 12:47 |
Как сделать 301 редирект в .htaccess | Вопросы от новичков | 8 | 01.11.2012 19:46 |
Редирект в .htaccess | Web программирование | 6 | 21.06.2012 21:56 |
Что прописать в .htaccess, чтобы обрабатывались директории? | Web программирование | 1 | 06.04.2011 08:57 |
.htaccess редирект | Прочее | 9 | 11.09.2009 21:48 |




