安全地移动我的博客?

时间:2015-01-05 15:16:44

标签: .htaccess

我的博客目前位于:

example.com/blog

帖子类似于:

example.com/blog/my-post

我想编辑我的htaccess文件,以便访问

的任何人
example.com/blog/my-post

最终会在:

example.com/my-post

如何使用htaccess文件执行此操作?

更新

现在我有:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # www.
    RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
    RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

</IfModule>

这会将任何非www流量转发给www。但是,我需要修改它以支持/博客。我不认为我的语法是正确的:

    RewriteCond %{HTTP_HOST} ^example\.com/blog$ [NC]
    RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

1 个答案:

答案 0 :(得分:1)

您无法使用/blog变量匹配HOST_NAME

让你的htaccess像这样:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # www.
    RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301,NE]

    RewriteRule ^blog/(.*)$ /$1 [L,NC,R=301]

</IfModule>

这假设.htaccess目录中没有/blog/ 。但是,如果出于某种原因存在,请在/blog/.htaccess中将此规则用作第一条规则

RewriteEngine On
RewriteRule ^(.*)$ /$1 [L,R=301]