2013-08-05 2 views
0

Что делать, если у меня есть 2000 ссылок на моем сайте, должен ли я писать правила перезаписи мод для каждого из них Я хочу только 1 правило Если я использую правило внутреннего переписывания для изменения имен моей веб-страницы вместо перенаправления, У меня будет дублирование контента? Например, если я переписываю /oldpage.html в /working-person.html, он получает внутреннюю перенаправление на working-person.html. Это действительно работает. Но oldpage.html еще «прямая» ссылка, и не показывает 301.Как перенаправить?

Сервер бросает ошибку 500, если я добавляю [R] или [R = 301] в конце:

RewriteRule ^oldpage.html$ working-person.html [R=301]. 

с другой стороны ...

Redirect 301 /oldpage.html http://www.example.com/working-person.html 

... работает. Должен ли я просто использовать перенаправление?

Мне показалось, что я читал где-то использовать перезапись вместо перенаправления при использовании других директив. Зачем использовать внутренний переписывать, если вы получаете дублированный контент?

Спасибо за любые идеи/мнения.

ответ

0

Вы хотите использовать 301 (переехал постоянно), поэтому поисковые системы (например, Google) могут переиндексировать ваш сайт. Как только это произошло, вам больше не нужно перенаправление.

У вас никогда не должно быть дублированного контента.

1

Эта строка ваша синтаксическая ошибка:

RewriteRule ^oldpage.html$ working-person.html [R=301]. 

Там точка в конце концов вызывает 500 внутренняя ошибка.

Изменить что:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^oldpage\.html$ /working-person.html [R=301,L,NC] 

Если у вас есть 2000 нечетные ссылки затем предоставить некоторые образцы старых и новых связей, так что я могу предложить, что ли может быть обработано несколько правил mod_rewrite или нет.

Убедитесь, что mod_rewrite и .htaccess включены через httpd.conf, а затем код выше расположен в .htaccess под кодом DOCUMENT_ROOT.

Смежные вопросы