htaccess:将图像路径重定向到PHP脚本

ben*_*oit 3 php apache .htaccess mod-rewrite redirect

我想要以下图片网址

http://www.example.com/image-provider/article/1275449_inline3_scale_700xauto.jpg
Run Code Online (Sandbox Code Playgroud)

要重定向到实际生成内容的以下PHP脚本

http://www.example.com/image-provider?url=article/1275449_inline3_scale_700xauto.jpg
Run Code Online (Sandbox Code Playgroud)

我在.htaccess中尝试了以下语法

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/image-provider/(.*)$ image-provider?url=$1 [L]
Run Code Online (Sandbox Code Playgroud)

到目前为止没有成功:我仍然得到404.我的.htaccess有什么问题吗?

anu*_*ava 6

您可以使用此规则:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(image-provider)/(.+)$ $1?url=$2 [L,QSA,NC]
Run Code Online (Sandbox Code Playgroud)

您的规则中的几个问题:

  1. 领先的斜线不匹配 .htaccess
  2. 您必须使用.+以避免匹配/image-provider/为URI.