如何仅使用htaccess为图像重写URL

时间:2012-11-05 07:56:41

标签: php .htaccess url-rewriting

这是我图片的当前网址 -

http://www.mysite.com/files/thumb/133/595

在firebug中检查时,这是图像标记下的代码 -

<img src="http://www.mysite.com/files/thumb/133/595" alt="This is text">

现在我希望上面的网址改变如下 -

http://www.mysite.com/files/thumb/133/595/This-is-text.jpg

图片扩展程序(在这种情况下为.jpg)会自动添加到图片类型上,并且alt文本会添加到链接中,空格将从-替换。

我怎样才能做到这一点?通过htaccess或其他方法(项目位于php)。

如何重写我的htaccess文件,此更改仅适用于图像。(重写新手)。

1 个答案:

答案 0 :(得分:1)

你不能在htaccess中执行此操作,因为这是文本“备用文本永远不会发送到服务器,只是HTML标记的一部分。您需要更改您的网站以便而不是:

<img src="http://www.mysite.com/files/thumb/133/595" alt="This is text">

在整个网站的每个地方,它们都是这样的:

<img src="http://www.mysite.com/files/thumb/133/595/This-is-text.jpg" alt="This is text">

不确定您的网站是如何构建的,这是否是某些脚本中的单行更改,或者是否涉及搜索并替换每个文件。如果你有这个,如果你想使用mod_rewrite 将这些URL的重新重写为原始的,那么你可以这样做:

RewriteEngine On
RewriteRule ^/?files/thumb/([0-9]+)/([0-9]+)/.+\.jpg$ /files/thumb/$1/$2 [L]

基本上,在2个数字之后抛弃任何东西。