Я не уверен, как сделать это через .htaccess, но я делаю это с помощью PHP-кода внутри моего config.php
, который загружается для каждого файла.
if(substr($_SERVER['SERVER_NAME'],0,4) != "www." && $_SERVER['SERVER_NAME'] != 'localhost')
header('Location: http://www.'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
РЕДАКТИРОВАТЬ: @genesis, вы правы, я забыл о https
Изменение
header('Location: http://www.'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
до
header('Location: '.
(@$_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://').
'www.'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);