如何编写重写规则,将访问者重定向到域www.mydomain.com/
到www.mydomain.com/index.html
?
答案 0 :(得分:20)
所以你想将没有(^$
)重定向到index.html
?那就像
RewriteRule ^$ index.html [L]
如果您想避免两者被搜索机器人编入索引的/
和/index.html
,请添加R=301
以使其成为permanent redirect而不是temporary redirect(302,这是默认值)。这将使机器人仅索引/index.html
。
RewriteRule ^$ index.html [R=301,L]
答案 1 :(得分:4)
什么 BalusC 说 - 但考虑一下你是否真的想重定向它们。与大多数服务器一样,当浏览器请求index.html
时,提供/
不是更好吗?它是一个额外的往返服务器,没有任何收益,只是使URL更长。这是20世纪90年代。 :)
答案 2 :(得分:0)
一种方法是将index.html放在另一个文件夹中,例如: domain.com/welcome/index.html并从您的CPanel执行R301。 这是一个词,但它对我有用。有同样的问题。
答案 3 :(得分:0)
上面是否可能有错误?它对我不起作用,将我重定向到/index.html
中非常长的文件路径 end
对我有用的代码是:
# These two lines redirect the root to index.html.
RewriteRule ^$ /index.html [R=301,L]
RewriteRule ^/$ /index.html [R=301,L]
我在.htaccess redirect root to index.php找到了这个解决方案