【问题标题】:Exclude image urls from redirection using htaccess使用 htaccess 从重定向中排除图像 url
【发布时间】:2012-09-17 19:50:49
【问题描述】:

我的旧博客位于 www.example.com/myblog 我改变了我的服务器,我想使用 www.example.com/blog

为此,我使用了 htaccess 代码 重定向 301 /myblog http://www.example.com/blog

这有助于重定向博客主页和个人博客文章。

图像被放置在新服务器中名为 myblog 的文件夹中。 所以图片网址是 www.example.com/myblog/wp-content/uploads/2010/04/something.jpg

但我上面写的 htaccess 将它重定向到 www.example.com/blog/wp-content/uploads/2010/04/something.jpg ,它返回 404。

谁能帮我编写 htaccess 代码来重定向博客文章网址,但不包括博客图片网址?

【问题讨论】:

    标签: apache .htaccess mod-rewrite url-rewriting


    【解决方案1】:

    不要使用 mod_alias 和 Redirect 指令,而是尝试 mod_rewrite 并添加一些条件:

    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^/?myblog/(.*)$ http://www.example.com/blog/$1 [L,R=301]
    
    # redriect the index
    RewriteRule ^/?myblog/?$ http://www.example.com/blog/ [L,R=301]
    

    【讨论】:

    • 乔恩,这是否会从重定向中排除图像。这是我的要求
    • @NikhilRajR 是的,因为第一个条件几乎是“如果发出的请求指向一个不存在的文件”,所以如果您请求 /myblog /wp-content/uploads/ 文件,这将是错误的,不会发生重定向。
    • 乔恩,谢谢。有效。我将学习htaccess。我需要知道的另一件事是如何使用 htaccess 使 url 不区分大小写。当我搜索结果就像启用“CheckSpelling On”一样,但我在 Cpanel 上找不到这个..!
    • 刚才我注意到博客帖子发生了两个重定向。一个是从 /myblog/post 到 /blog/post 然后到 /post 我认为这是因为我为博客和网站安装了相同的 WP
    • 您提供的代码存在问题,因为当我访问旧博客主页 www.example.com/myblog 时,没有发生重定向。请帮我解决这个问题..
    猜你喜欢
    • 2018-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-24
    • 1970-01-01
    • 2011-09-02
    • 2016-03-21
    • 1970-01-01
    相关资源
    最近更新 更多