Regex .htaccess-添加www并将所有内容定向到根级别

Regex .htaccess-添加www并将所有内容定向到根级别,regex,apache,.htaccess,mod-rewrite,Regex,Apache,.htaccess,Mod Rewrite,我希望所有请求都指向根页面。如果错过了,我还需要添加www。我尝试了无数次,但似乎无法使其发挥作用,这是最新的尝试 RewriteEngine on RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/ [L,R=301] RewriteRule !^.*/ / [NC,L] 如果他们在请求中不使用www,则下面的代码有效 RewriteEngine on RewriteCond

我希望所有请求都指向根页面。如果错过了,我还需要添加
www
。我尝试了无数次,但似乎无法使其发挥作用,这是最新的尝试

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

RewriteRule !^.*/ / [NC,L]
如果他们在请求中不使用
www
,则下面的代码有效

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

您可以将此单一规则用作
文档\u ROOT/.htaccess
文件中的第一条规则:

RewriteEngine on 

RewriteCond %{HTTP_HOST} !^www\. [NC,OR]
RewriteCond %{REQUEST_URI} ^/.+
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ http://www.domain.com/? [L,R=301]

谢谢,出于某种原因,这条规则需要很长时间才能加载,然后最终加载页面,但却被破坏了?所以您得到了404或其他错误?您是否尝试过在新浏览器中避免301缓存问题。我没有收到404,我收到的是页面,但图像已损坏,没有样式设置等。我在多个浏览器、清空的chache和我的移动设备上尝试过。非常感谢!我希望我能理解代码中发生了什么:)事实上,这个规则并没有那么难。这意味着如果www不在主机(条件1)中,或者如果URI不在
/
(条件2)中,并且请求不在文件中,则重定向到
http://www.domain.com/