我已经将博客转移到另一个主机上,并且有几个帖子的链接现已被破坏。这是因为我已将博客移到子目录/ blog /中。它以前位于根目录中。
我希望我可以重定向任何导致404的URL请求:
http://example.com/2014/04/10/the-blog-post
要
http://example.com/blog/2014/04/10/the-blog-post
基本上所有htaccess文件需要做的是在查询字符串之前添加“blog”,如果请求的URL不存在。
谢谢!
答案 0 :(得分:1)
试试这个:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(?!blog) blog%{REQUEST_URI} [L,R,DPI]
如果您对重定向有效,可以将R
更改为R=301
以使其永久化。
选项2
对于最后一行,您也可以使用:
RewriteRule ^(?!blog)(.*) blog/$1 [L,R]