Jump to content

Переезд на Simpla CMS. Ошибка в .htaccess. Как устранить?


Recommended Posts

В дальнейшем тему можно будет перенести в "Готовые решения", поэтому пишу максимально просто и понятно.

 

Переезжаю на Simpla CMS. Для того, что бы не потерять позиции в поисковиках, делаю редирект (то есть что бы при переходе на старые ссылки, открывалась новая страница, а не 404-страница не найдена).

 

В корневом каталоге открываю файл .htaccess

и прописываю подобный код:

 

Пример моего кода:

Redirect 301 /delivery    http://simplacms.ru/dostavka

Где

/delivery

страница доставки на старом сайте, а 

http://simplacms.ru/dostavka 

- страница доставки на новом сайте.

 

Но при переходе почему-то образуется вот такая ссылка.

http://simplacms.ru/dostavka/?module=PageView&page_url=delivery

Ссылки каталога

Redirect 301 /products/category/12345  http://simplacms.ru/catalog/dildo/ 

работают нормально.

 

В чём косяк и как исправить? .htaccess стандартный. Simpla CMS - 2.1.5

 

Думаю что дело в этом куске файла .htaccess
# Статические страницы
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/?$    index.php?module=PageView&page_url=$1 [L,QSA]
RewriteRule ^/?$    index.php?module=MainView&page_url= [L,QSA]
Link to post
Share on other sites

 

RewriteRule ^delivery$ http://simplacms.ru/dostavka [R=301,L,QSA]

 

сразу после 

 

RewriteEngine on

Благодарю, всё работает. Можно переносить в Готовые решения.

 

Апдейт:

 

Почему-то работает только первая ссылка, идущие следом не работают.

 

RewriteRule ^pay$ http://simplacms.ru/oplata/ [R=301,L,QSA]
RewriteRule ^items$ http://simpacms.ru/products [R=301,L,QSA]
Edited by ATOM57
Link to post
Share on other sites

Потому что на строке

RewriteRule ^items$ http://simpacms.ru/products [R=301,L,QSA]

процесс прерывается, а надо обрабатывать дальше.

 

Пробуйте

RewriteRule ^items$ products [QSA]

 

А еще проще бы так:

RewriteRule ^items$ index.php?module=ProductsView [L,QSA]

Но так же 301 заголовок не уйдет

Link to post
Share on other sites

Уже пробовал этот метод, писал на тостере: 

 

В .htaccess прописываю вот такое правило, найденное в гугле:

RewriteRule ^products/category/33487227?$    catalog/наручные-часы [L,QSA]

Всё хорошо работает. При заходе на site.com/products/category/3348227 открывается нужное содержание, такое же как и по ссылке http://site.com/catalog/наручные-часы, но URL остаётся таким же.

 

Мне почему-то кажется что он должен не просто открывать, а переадресовывать на новую ссылку.

Link to post
Share on other sites

В index.php подключаете файл, к примеру redirect.php и в нем определяете какие запросы вам нужно переадресовывать, а какие нет.

И отдаете заголовок с той страницей на которую переместился контент

header("HTTP/1.1 301 Moved Permanently");
header("Location: новый адрес");
exit();
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...