choodo
@choodo

Как описать правила .htaccess?

Ситуация: сайт на битрикс. "Переношу" все ссылки в поиске со старого сайта на новый с помощью Redirect 301. В какой последовательности нужно описать правила в .htaccess, чтобы все работало корректно?
Условия:
-"перенести" 333 ссылки в поиске на новые пути на новом сайте
-все обращения на www.domen.ru перенаправлять на domen.ru, в том числе обращения с путем, а не только к заглавной (/)

Оригинальный .htaccess вот такой:
Options -Indexes 
ErrorDocument 404 /404.php

<IfModule mod_php5.c>
  php_flag session.use_trans_sid off
  #php_value display_errors 1
  #php_value mbstring.internal_encoding UTF-8
  php_flag register_globals off 	
</IfModule>

<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>

<IfModule mod_dir.c>
  DirectoryIndex index.php index.html
</IfModule>

<IfModule mod_expires.c>
  ExpiresActive on
  ExpiresByType image/jpeg "access plus 3 day"
  ExpiresByType image/gif "access plus 3 day"
  ExpiresByType image/png "access plus 3 day"
  ExpiresByType text/css "access plus 3 day"
  ExpiresByType application/javascript "access plus 3 day"  
</IfModule>


До каких строк нужно поместить инструкции о перенаправлении на адрес без www?
# to without www
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

В какое место нужно поместить инструкции о редиректе со старых путей на новые, чтобы они работали с учетом правила перенаправления с www на адрес без www? Если "включаю" правила перенаправления с www на адрес без www, то правила ниже не срабатывают.

RewriteEngine On
RewriteCond %{HTTP_HOST} ^$
RewriteRule ^menu/$ domen.ru/company/? [L,R=301]
RewriteRule ^menu/activity/$ domen.ru/company/? [L,R=301]
RewriteRule ^menu/activity$ domen.ru/company/? [L,R=301]
  • Вопрос задан
  • 122 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы