Ответ 1
RewriteCond
уже является вашим "if-condition". Просто добавьте еще один:
RewriteCond %{HTTP_HOST} !=localhost
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
У меня есть следующее в моем htaccess, чтобы заставить www в URL-адресах:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Как мне применить это, если не на localhost? Есть ли какое-то условие if, которое я могу поставить? Прямо сейчас, я получаю что-то вроде этого: http://www.localhost/
...
RewriteCond
уже является вашим "if-condition". Просто добавьте еще один:
RewriteCond %{HTTP_HOST} !=localhost
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Я добавил все это:
RewriteCond %{HTTP_HOST} !=localhost
RewriteCond %{HTTP_HOST} !=127.0.0.1
RewriteCond %{REMOTE_ADDR} !=127.0.0.1
RewriteCond %{REMOTE_ADDR} !=::1