301 редирект не работает в Wordpress - PullRequest
1 голос
/ 27 января 2011

У меня есть некоторый код перезаписи в моем файле .htaccess. Я переместил статический HTML-сайт в WordPress и мне нужно следующее:

  1. перенаправление http://domain.com.au/ на http://www.domain.com.au/
  2. перенаправить (старая статическая домашняя страница) index.html в http://www.domain.com.au/

Я не могу заставить либо работать, я попробовал все различные методы, которые были предложены. Домен.com.au на http://www.domain.com.au работает для всех страниц, кроме домашней страницы, например http://domain.com.au/ourteam перенаправляет на http://www.domain.com.au/ourteam

Но он не будет перенаправлять для рута (домашней страницы).

Также я получаю страницу не найдена ошибка для перенаправления index.html.

Мой файл .htaccess:

Options +FollowSymlinks
RewriteEngine on
### re-direct index.html to root
RewriteCond %{THE_REQUEST} ^.*\/index\.html
RewriteRule ^(.*)index\.html$ /$1 [R=301,L]
### non www to www
RewriteCond %{HTTP_HOST} ^domain\.com\.au$ [NC]
RewriteRule ^(.*)$ http://www.domain.com.au/$1 [R=301,L]

redirect 301 /team.html http://www.domain.com.au/our-team/
redirect 301 /contact.html http://www.domain.com.au/contact-us/

Кто-нибудь, помогите - я рву на себе волосы!

Ответы [ 3 ]

2 голосов
/ 20 августа 2011

Извините, у меня просто возникли проблемы с этим и я обнаружил: Использование перенаправления htaccess to 301, не работает

Очевидно, вы должны поместить перенаправления над #begin wordpress, поскольку apache обрабатывает перезаписи и никогда не попадает в ваши перенаправления.

0 голосов
/ 03 февраля 2016

Поскольку вы используете rewrite правила, вам нужно настроить 301-е в формате перезаписи, это единственный способ, которым он будет работать.

RewriteRule ^/team.html$ http://www.domain.com.au/our-team/ [R=301,L]
0 голосов
/ 21 августа 2011

Попробуйте:

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on

### non www to www
RewriteCond %{HTTP_HOST} ^domain.com.au [NC]
RewriteRule ^(.*)$ http://www.domain.com.au/$1 [R=301,L]

### re-direct index.html to root
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.domain.com.au/ [R=301,L]

redirect 301 /team.html http://www.domain.com.au/our-team/
redirect 301 /contact.html http://www.domain.com.au/contact-us/

# WrodPress rules begin here...
</IfModule>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...