gpt4 book ai didi

php - 根据 .htaccess 文件中的模式显示特定图像

转载 作者:搜寻专家 更新时间:2023-10-31 21:40:29 25 4
gpt4 key购买 nike

为了 SEO 目的,我想重命名一系列图像。但是,我有 6,000 多张图片,所以我认为我的 .htaccess 文件必须很容易重写。

当前图像当前使用以下模式命名:

http://www.mydomain.com/images/small/00005712.jpg

http://www.mydomain.com/images/medium/00005712.jpg

http://www.mydomain.com/images/large/00005712.jpg

我希望能够使用如下命名方案来调用它们:

http://www.mydomain.com/5712s-keyword-phrase.jpg

http://www.mydomain.com/5712m-keyword-phrase.jpg

http://www.mydomain.com/5712l-keyword-phrase.jpg

这将允许我更改显示:

<img src="http://www.mydomain.com/images/large/00005712.jpg" />

<img src="http://www.mydomain.com/5712l-keyword-phrase.jpg" />

重写有望让我简单地更改我的 php 文件中 img src 属性的模式。具有新名称的整个站点的 img src 属性实际上会将原始图像显示在屏幕上。

所有文件名都有 8 位数字名称,左边用 0 填充。

另请注意,如果您知道使用左侧的关键字短语和末尾的数字来执行此操作,例如 http://www.mydomain.com/keyword-phrase-5712s.jpg那会更好。

如果我没有提供足够的细节,请让我知道我可以做些什么来澄清。对此事的任何帮助将不胜感激。

最佳答案

如果将文件夹重命名为 s m 和 l,则可以使用 1 个规则集

RewriteCond %{REQUEST_URI} (.*)\.jpg$
RewriteRule ^0*([1-9])(\d*)(s|m|l)(.*)$ /images/$3/$1$2.jpg

否则你需要3

RewriteCond %{REQUEST_URI} (.*)\.jpg$
RewriteRule ^0*([1-9])(\d*)s(.*)$ /images/small/$1$2.jpg

RewriteCond %{REQUEST_URI} (.*)\.jpg$
RewriteRule ^0*([1-9])(\d*)m(.*)$ /images/medium/$1$2.jpg

RewriteCond %{REQUEST_URI} (.*)\.jpg$
RewriteRule ^0*([1-9])(\d*)l(.*)$ /images/large/$1$2.jpg

编辑

根据下面的评论,要丢弃文件名前面的 SEO 术语,请使用:

RewriteRule ^.*(\d+)s\.(jpg|gif|png)$ /images/small/$1.$2
RewriteRule ^.*(\d+)m\.(jpg|gif|png)$ /images/medium/$1.$2
RewriteRule ^.*(\d+)l\.(jpg|gif|png)$ /images/large/$1.$2

开头的 .* 会丢弃图像数字之前的任何前导字符。由于现在文件 url 中包含前导零,我们只需使用 (\d+) 来匹配 (s|m|l) 文件夹指示符和图像文件扩展名之前的 1 个或多个数字。

关于php - 根据 .htaccess 文件中的模式显示特定图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11753095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com