1

我正在尝试在我的 .htaccess 文件中执行以下操作:

Alias /assets /location/of/files

RewriteCond %{REQUEST_URI} ^/assets/[0-9]+.jpg$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* /build_thumbnail.cfm?path=%{REQUEST_URI} [QSA,L]

所以理论上它很简单:

  • 从以 /assets/ 开头的 url 请求图像
  • apache 检查文件是否存在
  • 如果找到,则提供文件
  • 如果不是,则改为运行脚本

这在其他地方工作正常,但这是我第一次尝试在作为别名包含的目录上使用它。据我了解,Mod Rewrite 在 Mod Alias 之前运行,这肯定会导致它不起作用(实际上我的 Alias 行在 apache conf 中,而其余行在 .htaccess 中)。

有没有办法让 Mod Rewrite 承认 Aliased 目录?

是否可以将 Alias 行改为 Rewrite 行?

4

1 回答 1

0

尝试-F调用子请求:

RewriteCond %{REQUEST_URI} ^/assets/[0-9]+.jpg$
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule .* /build_thumbnail.cfm?path=%{REQUEST_URI} [QSA,L]
于 2009-11-12T17:32:31.350 回答