我试图让 Matt Wilcox 自适应图像与 CakePHP 一起工作但没有成功。 http://adaptive-images.com/
CakePHP 带有三个它自己的 .htaccess 文件。一/
进/app/
一进/app/webroot/
我需要让这四个文件一起工作,以便将图像请求发送到我放在根目录中的文件adaptive-images.php。
这是来自自适应图像的 htaccess
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
# Adaptive-Images -----------------------------------------------------------------------------------
# Add any directories you wish to omit from the Adaptive-Images process on a new line, as follows:
# RewriteCond %{REQUEST_URI} !some-directory
# RewriteCond %{REQUEST_URI} !another-directory
RewriteCond %{REQUEST_URI} !assets
# Send any GIF, JPG, or PNG request that IS NOT stored inside one of the above directories
# to adaptive-images.php so we can select appropriately sized versions
RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php
# END Adaptive-Images -------------------------------------------------------------------------------
</IfModule>
这是来自根目录的蛋糕 htaccess /
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
这是来自 /app/ 的蛋糕 htaccess
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
这是来自 /app/webroot 的蛋糕 htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
我假设来自自适应图像的规则必须首先出现在其中一个文件中,并可能为最后一条规则添加一个 [L] 或其他内容。但到目前为止,我唯一能做到的就是破坏图像的路径,/img/myimage.gif
以便 Cake 开始寻找 ImgController。
Apache 日志没有给我任何有价值的东西。
有什么建议么?
编辑:目前看起来像这样
我修改后的/
- htaccess 现在如下所示。Cake 给了我一个关于缺少 ImgController 的错误,并且没有在自适应图像应该放入的 ai-cache-folder 中创建图像。
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !assets
RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php
RewriteCond %{REQUEST_URI} !adaptive-images\.php [NC]
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>