我正在尝试为图像做干净的 URL,其中 url 还包含图像的描述(用于 seo 目的)。文件名的唯一重要部分是开头和扩展名。
我正在尝试获取类似图像的 URL,例如:
mywebsite.com/seo-images/ 123 -some-description.jpg
在图像实际位于的位置进行干净的 url 重写
mywebsite.com/uploads/ 123 .jpg
文件类型可以是 .jpg 或 .png 或 .gif 等。
我也有缩略图:
mywebsite.com/seo-images/t123 -some -description.jpg
还要做一个干净的 url 重写以相同的方式和位置
mywebsite.com/uploads/t123 .jpg _
我尝试将以下 .htaccess 文件放在 seo-images 目录中
RewriteEngine On
RewriteBase /seo-images/
# match all numbers upto - then get the extension after .
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^([_0-9a-zA-Z-]+/)?-([_0-9a-zA-Z-]+/)?([_0-9a-zA-Z-]+/)\.$ /uploads/$1.$3 [R=301,L]
到目前为止,不好。
我在根目录中有一个 .htaccess 文件,它执行其他干净的 mod_rewrites。
“一些描述”可以是一个单词或多个单词,由 - 分隔,所以基本上 - 之后和 . 之前的所有内容。应该忽略并且新文件名用于使用不同目录中的新文件名重写