Page 1 of 1

Будет ли работать редирект

Posted: Tue Dec 04, 2012 8:25 am
by artbe
Добрый день вопрос про слейку url. Очень много страниц вида ?page=, которые засели в индексе поисковиков. Сейчас все это приведено в вид - site.ru/katalog, site.ru/news и т.д., но так же мы можем зайти под site.ru/index.php?page=katalog. Как правильно склеить эти странцы, страниц более 300. P/S

Code: Select all

$config['url_rewriting'] = 'mod_rewrite';
.htaccess такой:

Code: Select all

Options +FollowSymLinks
  RewriteEngine on
  RewriteBase /
	
  # 301 Redirect all requests that don't contain a dot or trailing slash to
  # include a trailing slash
  # except for form POSTS
  RewriteCond %{REQUEST_URI} !/$
  RewriteCond %{REQUEST_URI} !\.
  RewriteCond %{REQUEST_METHOD} !POST$
  RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]

  # Rewrites urls in the form of /parent/child/
  # but only rewrites if the requested URL is not a file or directory
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.+)$ index.php?page=$1 [QSA]
Если сделать вид вроде такого:

Code: Select all

Options +FollowSymLinks
  RewriteEngine on
  RewriteBase /
  # 301 Redirect all requests that don't contain a dot or trailing slash to
  # include a trailing slash
  # except for form POSTS
   RewriteCond %{ENV:REDIRECT_STATUS} 200
   RewriteRule .* - [L]
   RewriteCond %{REQUEST_URI} ^/index.php$
   RewriteCond %{QUERY_STRING} ^page=(.*)$
   RewriteRule ^.*$ %1/? [R=301,L]

  # Rewrites urls in the form of /parent/child/
  # but only rewrites if the requested URL is not a file or directory
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.+)$ index.php?page=$1 [QSA]
Правильный ли это редирект?

Re: Будет ли работать редирект

Posted: Tue Dec 04, 2012 9:49 am
by guro
Я удивляюсь над вами (без обид).
Зачем создавать новую тему, если уже есть тема с вашей проблемой? http://forum.cmsmadesimple.org/viewtopi ... 27&t=52906
И зачем спрашивать на форуме: "работает или не работает?", когда вы можете проверить сами!

Re: Будет ли работать редирект

Posted: Tue Dec 04, 2012 10:38 pm
by artbe
Редирект работает, однако страницы доступны и по другому url например сслыка - site.ru/index.php/katalog, одно и тоже что - site.ru/katalog. Как с этим бороться?

К тому же мы можем зайти на главную страницу так - site.ru/home, т.е. допустим мы ставим ссылку на родителя {breadcrumbs delimiter='/' initial='0'} , в каком нибудь подкаталоге и в результате вид сслыки будет такой - site.ru/home/for-clients/work , как убрать этот параметр home

Re: Будет ли работать редирект

Posted: Tue Dec 04, 2012 10:43 pm
by guro