Как мне сделать это простое перенаправление 301 из index.htm в root? - PullRequest
2 голосов
/ 19 марта 2010

Я читал различные справочные сайты по перенаправлению, и, честно говоря, я очень мало понимаю.

В настоящее время у меня есть стандартные правила перенаправления WordPress mod_rewrite в моем .htaccess:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Довольно многие мои источники ссылаются на старый URL http://www.example.com/index.htm, который выдает им ошибку, и я хочу, чтобы они были перенаправлены на http://www.example.com/. Я считаю, что перенаправление 301 является лучшим методом для этого.

Что мне нужно сделать?

Ответы [ 3 ]

3 голосов
/ 19 марта 2010
RewriteEngine On
RewriteCond %{THE_REQUEST} /index\.html? [NC]
RewriteRule ^(.*/)?index\.html?$ /$1 [R=301,L]

Это будет рекурсивно переводить все вхождения index.html или index.htm только в каталог.

0 голосов
/ 19 марта 2010

Создайте index.html, содержащий код:

<HTML>
<HEAD>
<META HTTP-EQUIV="refresh" CONTENT="seconds;URL=the-other-url">
</HEAD>
<BODY>
You will be redirected...
</BODY>
</HTML> 

Где «секунды» - это длительность задержки (в секундах) до перенаправления. Установите «0» для мгновенного перенаправления.

"URL-адрес другого пользователя" равен http://www.example.com/index.php

0 голосов
/ 19 марта 2010

Я не уверен на 100%, но я думаю, это должно быть RewriteRule ^index.htm$ / [R=301] или что-то вроде этого

...