Как изменить файл .htaccess, чтобы всегда перенаправлять на www

Я хотел бы изменить файл .htaccess, чтобы, когда кто-то входит на мой сайт без ввода www, сайт всегда перенаправляет их на www-версию. Например, если мой url - www.abc.com, и они просто набирают abc.com, я хочу перенаправить их на abc.com.

Вот мой текущий файл htaccess:

<IfModule mod_rewrite.c>
   RewriteBase /
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]  
</IfModule>

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

Ответы

Ответ 1

Добавьте что-то вроде этого сразу после RewriteEngine on:

RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*) http://www.example.com/$1 [R=301]

Ответ 2

Я использую следующий код. Он может использоваться для любого имени домена. Вам просто нужно ввести его в файл .htaccess.

RewriteEngine on  
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

(отредактирован, чтобы иметь весь код в том же блоке)

Ответ 3

Доступны два метода

1) используйте mod_alias apache module

Перенаправить постоянное/что-то http://yourwebsite.com/something

2) Добавьте следующую запись в свой .htaccess/http.conf/yourwebsite.conf в каталог конфигурации веб-сервера

RewriteEngine on RewriteCond% {HTTP_HOST} ^ yourwebsite.com RewriteRule ^ (. *) $http://www.yourwebsite.com $1 [R = постоянный, L]

Ответ 4

Если вы хотите перенаправить example.com на www.example.com, вы можете попробовать под кодом

RewriteEngine on
RewriteCond %{HTTP_HOST} !www.example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]