.htaccess 自适应图像访问

.htaccess 自适应图像访问,.htaccess,cakephp-2.0,.htaccess,Cakephp 2.0,我试图让Matt Wilcox adaptive images使用CakePHP,但没有成功。 CakePHP自带三个.htaccess文件。在/中,一个在/app/中,另一个在/app/webroot/ 我需要让这四个文件协同工作,以便将图像请求发送到我放在根目录中的文件adaptive-images.php 这是来自自适应图像的访问 好吧,我让它工作了,即使它可能不是最理想的解决方案 我只更改了/app/webroot-文件夹中的htaccess,如下所示 <IfModule mod

我试图让Matt Wilcox adaptive images使用CakePHP,但没有成功。

CakePHP自带三个.htaccess文件。在
/
中,一个在
/app/
中,另一个在
/app/webroot/

我需要让这四个文件协同工作,以便将图像请求发送到我放在根目录中的文件adaptive-images.php

这是来自自适应图像的访问
好吧,我让它工作了,即使它可能不是最理想的解决方案

我只更改了
/app/webroot
-文件夹中的htaccess,如下所示

<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On

    RewriteCond %{REQUEST_URI} !debug_kit
    RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php [L]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

稍微澄清一下这个问题。CakePHP附带三个标准htaccess文件。这些是我唯一使用的,现在我想为其中一个或几个添加一些附加规则,以使事情正常工作。更新了一些。您也尝试过使用[L]自适应映像规则。如果您在apache virtualHost中使用
app/webroot
作为webroot,那么其他两个.htaccess文件可能会被忽略。我也会建议使用[L],但显然这不是问题所在?嗯,我猜(现在不是在电脑后面),你应该保留
RewriteCond%{REQUEST_FILENAME}-d
重写cond%{REQUEST_FILENAME}-f
在CakePhp重写规则块中,否则“物理”文件也将由index.php处理
<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
</IfModule>
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
<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>
<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On

    RewriteCond %{REQUEST_URI} !debug_kit
    RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php [L]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
$cache_path    = "app/tmp/cache/ai-cache";
$source_file    = $document_root.'/app/webroot'.$requested_uri;