【问题标题】:How to rewrite timthumb image on nginx?如何在 nginx 上重写 timthumb 图像?
【发布时间】:2015-04-25 01:59:55
【问题描述】:

我的原图如下:

site.com/content/year/month/imagename.jpg

我使用timthumb生成缩略图,所以新链接如下:

site.com/content/timthumb.php?src=site.com/content/year/month/imagename.jpg&w=A&h=B&zc=1

我想将 timthumb 图片 url 重写为:

site.com/img/year/month/imagename.jpg

请帮助我,非常感谢!

-- 我尝试了很多方法,但都不起作用。下面是一些:

location / {
rewrite ^/img/([0-9]+)/([0-9]+)/(.*).(jpg|jpeg|png|gif) /content/timthumb.php?src=site.com/content/$1/$2/$3.$4&h=150&w=150&zc=1 break;
}

location / {
rewrite ^/img/([0-9]+)/([0-9]+)/(.*).(jpg|jpeg|png|gif) /content/timthumb.php?src=site.com/content/$1/$2/$3.$4&h=150&w=150&zc=1 last;
}

【问题讨论】:

  • 我认为让我们为您完成所有工作是不公平的。你没有尝试过什么吗?有什么研究吗?
  • 我已经编辑了主题,谢谢!

标签: php .htaccess nginx rewrite


【解决方案1】:

不幸的是,我没有 nginx,但是,经过一些研究,这可能对你有用:

location / {
    rewrite ^img/([0-9]+)/([0-9]+)/(.*)\.(jpg|jpeg|png|gif) content/timthumb.php?src=site.com/content/$1/$2/$3.$4&h=150&w=150&zc=1 last;
}

我只删除了前导斜杠(通常在 Apache 中也是如此)。

更新:使用this generator 提出了这个问题。请试一试。

location /img {
    rewrite ^/img/([0-9]+)/([0-9]+)/(.*)\.(jpg|jpeg|png|gif) /content/timthumb.php?src=site.com/content/$1/$2/$3.$4&h=150&w=150&zc=1 break;
}

【讨论】:

  • 最后一次尝试:我已经用转义点 \. 更新了我的答案。如果这不起作用,那么我相信其他人将能够解决它。
  • 这可能是 TimThumb 问题 - 或许尝试将 src=site.com 换成 src=http://example.com(并将 example 更改为 site,因为 StackOverflow 不允许我使用该 URL)。如果您解释问题所在,这也会有所帮助。你有错误吗?如果是这样,什么错误?
  • 已更新我的答案。使用的生成器添加斜线,并使用break 而不是last
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-14
  • 2013-01-20
  • 1970-01-01
  • 2018-12-24
  • 2014-11-06
  • 2019-11-26
相关资源
最近更新 更多