【问题标题】:Redirect images from folder to folder将图像从文件夹重定向到文件夹
【发布时间】:2013-01-05 04:43:29
【问题描述】:

我有一个包含 15000 张图片的文件夹,我决定将它们放在 10 个文件夹中。

我拥有 15000 张图片的初始文件夹网址是:

www.mysite.com/images/games/  

新文件夹的网址是:

www.mysite.com/images/games/1/  
www.mysite.com/images/games/2/  
www.mysite.com/images/games/3/  
www.mysite.com/images/games/4/  
www.mysite.com/images/games/5/  
www.mysite.com/images/games/6/  
www.mysite.com/images/games/7/  
www.mysite.com/images/games/8/  
www.mysite.com/images/games/9/  
www.mysite.com/images/games/10/  

如何重定向我的图像以匹配其正确的文件夹以消除 404 错误?

【问题讨论】:

  • 信息丢失!您必须解释哪些图像进入哪个文件夹。那是猜不透的。你的问题是How can I redirect my images to match their correct folder to get rid of 404 errors.?但是,正确的文件夹是什么?`
  • 另外,您使用的是哪个 httpd?阿帕奇? Nginx? IIS?细节很重要。
  • 我知道哪些图片放在哪个文件夹,但它是一个很大的列表,我无法在 htacess 中进行 15000 重定向,并且我正在使用 apache

标签: image .htaccess mod-rewrite redirect directory


【解决方案1】:

鉴于您在上述 cmets 中的扩展:

我知道哪些图片放在哪个文件夹,但它是一个很大的列表

我建议将该列表放在一个文本文件中,并使用查找和替换(或awk?)将该列表转换为mod_redirect 规则,例如

Redirect /images/games/oldname /images/games/8/oldname

然后将它们粘贴到配置文件中。如果没有实际的算法来确定这些是如何分类到目录中的,那么就没有可以重定向请求的程序,因为它需要一个公式来工作。

【讨论】:

  • +1 出色的工作,试图解决 OP 的未知数。好主意。
【解决方案2】:

尽管我很喜欢引用 When Not To Use Rewrite,但这实际上是需要 mod_rewrite 的情况。

您没有说明您是如何在十个新目录之间分配图像的,但我假设图像已编号(例如00001.png00002.png、...15000.png )。然后你用最后一个数字来确定哪个图像进入哪个文件夹,即00001.png进入1目录,一直到15000.png进入10目录(我想-为什么没有'你把它命名为0?)你就是这么做的,对吧?

您没有提及您在此站点上使用的服务器,所以我假设您使用的是 Apache,对吧?在这种情况下,您将编辑适当的配置文件(我开始尝试假设哪一个,但老实说,它可能是我能想到的四个中的任何一个,这取决于您是否拥有对 vhost 配置的编辑权限,或者在服务器,或者如果您使用的是 Debian 风格或 Red-Hat 风格的发行版,那么您正在使用 Linux,对吗?你没有说。)你' d 确保在某处有一个RewriteEngine On,然后你会做这样的事情:

RewriteRule ^/images/games/(\d+)(\d)\.png$ /images/games/$2/$1$2.png

...除了您将目录命名为10 而不是0,因此所有以0 结尾的目录都会被误导。也许我们应该试试这个?

RewriteRule ^/images/games/(\d+0)\.png$ /images/games/10/$1.png [L]
RewriteRule ^/images/games/(\d+)([1-9])\.png$ /images/games/$2/$1$2.png [L]

...首先捕捉 0,然后是其他所有内容。

我会检查这个答案,但你没有给我们足够的信息来知道如何做。

【讨论】:

  • 致通过搜索找到此问答的其他人:出于可惜,将目录编号为 0..9 而不是 1..10,并告诉我们一些有关您的服务器环境的信息。
  • 谢谢你的回答兄弟,我忘了说所有图像都有一个特定的名称,例如:myimage15_33,greatday_today
  • 如果没有关于如何在目录之间分配文件的算法,则没有实用的方法来重定向对它们的请求。如果有算法,请溢出。
  • 好的,非常感谢您的帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-09-08
  • 2013-01-28
  • 2017-12-05
  • 1970-01-01
  • 2011-11-21
  • 1970-01-01
  • 2018-09-30
相关资源
最近更新 更多