Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Автоматический редирект
http://forum.kohanaframework.su/viewtopic.php?f=31&t=420
Страница 1 из 1

Автор:  podpole [ 21 окт 2012, 18:16 ]
Заголовок сообщения:  Автоматический редирект

Всем добрый день!
Столкнулся с проблемой, все страницы в рамках сайта доступны по адресам http://домен/страница и http://домен/страница/, при чем, если делать редирект $this->request->redirect('/страница/'); - то редиректит на http://домен/страница (т.е. без слеша в конце). Я хотел бы привести все ссылки к единому стандарту (со слешем на конце, ну естественно за исключением страниц с .html на конце).
Ни кто не сталкивался с такой проблемой? Есть какая нибудь возможность в Kohana проверить наличие слеша на конце и если его нет - редиректнуть на вариант страницы со слешем?

Автор:  Sergey [ 22 окт 2012, 00:25 ]
Заголовок сообщения:  Re: Автоматический редирект

podpole писал(а):
Всем добрый день!
Столкнулся с проблемой, все страницы в рамках сайта доступны по адресам http://домен/страница и http://домен/страница/, при чем, если делать редирект $this->request->redirect('/страница/'); - то редиректит на http://домен/страница (т.е. без слеша в конце).

Адреса http://домен/страница и http://домен/страница/ идентичны.
И абсолютно равноправны

podpole писал(а):
Я хотел бы привести все ссылки к единому стандарту (со слешем на конце, ну естественно за исключением страниц с .html на конце).

Можете привести 2 участка некоторого кода, который в Kohana приводит к 2 результатам http://домен/страница и http://домен/страница/ соответственно?

Чем вам мешает такое применение перенаправленний?
Код:
$redirect = Route::get('name')->uri(array('action' => 'action_name', 'param' => 'param_value'));
$this->request->redirect($redirect);


Можете обрисовать проблему конкретнее?

Автор:  podpole [ 26 окт 2012, 00:59 ]
Заголовок сообщения:  Re: Автоматический редирект

Первый участок - простая гиперссылка, например <a href='/страница/'>Пример</a> - мы переходим на страницу: http://домен/страница/
Второй участок - $this->request->redirect('/страница/'); - мы переходим на http://домен/страница - хотя в редиректе явно указано что необходим слеш в конце...
Проблема заключается в том, что для нас, обычных пользователей нет абсолютно никакой разницы, находимся ли мы на http://домен/страница/ или на http://домен/страница - контент весь идентичен... А вот для поисковых систем это 2 абсолютно разные страницы с идентичным контентом, а дублирование контента - самое большое зло для поисковых систем, и хочется абсолютно исключить даже потенциальную возможность допустить такое дублирование и привести всё к единому стандарту.

Автор:  Sergey [ 26 окт 2012, 21:00 ]
Заголовок сообщения:  Re: Автоматический редирект

Используйте не
Код:
<a href='/страница/'>Пример</a> 

а
Код:
<a href="<?php echo URL::site('страница')?>">Пример</a> 

и не морочте голову )

Автор:  admin [ 29 окт 2012, 18:58 ]
Заголовок сообщения:  Re: Автоматический редирект

Для бирж по продаже ссылок это тоже совершенно разные страницы ;)
Мне на одном сайте пришлось редиректы делать на всех страницах без слеша (ну ессно перед этим я везде сделал, чтобы со слешом было, но чтобы соплей не было и для пм сделал редирект).

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/