【问题标题】:.htaccess redirect image url to new location.htaccess 将图像 URL 重定向到新位置
【发布时间】:2014-05-13 20:39:08
【问题描述】:

我有一个非常大的网站,里面有很多图片,这些图片的 URL 像 /dir1/dir2/images/xyz.jpg 或 /dir1/images/xyz.jpg`。 (进入页面之前的任意数量的目录)。

这些图像必须移动到站点根目录的单个图像目录,而不是进入并更改所有 url,是否可以使用 .htaccess 文件将它们指向/images.xyz.jpg? (以斜线开头)

我的 htaccess 文件开头已经有此代码用于其他 url 清理,但无法使此图像 url 更改工作。

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteRule ^(downloads|includes)($|/) - [L]

【问题讨论】:

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


    【解决方案1】:

    你可以这样做:

    RewriteEngine On
    
    RewriteRule ^(.*?)(images)/(.+)$ /$1$2.$3 [L,NC,R=302]
    
    RewriteCond %{REQUEST_FILENAME} -d [OR]
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^ - [L]
    RewriteRule ^(downloads|includes)($|/) - [L]
    

    【讨论】:

    • 太棒了...但是,您的代码突出显示了我的错误。图片的实际网址是/dir1/dir2/images/xyz.jpg。我忘记了网址是相对于页面的。但是,深度目录可能会有所不同。任何想法如何处理这个?
    • @Tom 去掉开头的^
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    • 2015-09-14
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    • 2022-06-11
    • 1970-01-01
    相关资源
    最近更新 更多