2013-03-05 79 views

回答

6

您好像要么丢失webroot中的'css'目录,要么丢失了mod_rewrite的错误配置;

默认的CakePHP mod_rewrite配置会将不存在的目录/文件路由到控制器和动作,例如,

/some/path 

将被路由到

SomeController::path() 

如果有一个 'CSS' 目录中的根目录,然后;

/css/ 

将被路由到:

CssController::index() 

然而,因为在你的应用程序没有这样的控制器,它将给这个错误。

+0

对于那些不使用.htaccess的主机,请注意,来自Web服务器透视图的根目录需要是WEBROOT子目录,而不是白嘴鸦安装。 – 2017-08-03 18:29:50

1

对调试此问题的小技巧。

thaJeztah对于错误出现的原因绝对正确,但出于调试目的,很难知道导致此问题的有问题的css路径在哪里。

如果您使用$this->Html->css('path')加载您的css文件(显然是使用正确的路径),并且您已经在webroot中拥有了css文件夹(如其他答案中所述),然后检查您的css文件。

在我的情况下,我调试与萤火虫,但所有我的.css加载,没有红色的错误,指示一个CSS文件无法加载(这可能是导致此问题)。所以,我检查了我的css文件和网址为背景,其中指向一个不存在的文件夹

例子:

//Webroot folder dist 
-- css 
-- extras 
    --img 

mydiv { 
    background: #626262 url(../img/web_top_bg.png); 
} 

所以很明显的图像不加载,但我没有注意到,因为它不是一个经常实例化的元素。解决该url()引用摆脱了CssController错误(也是相关的,摆脱了this other annoying error关于multiple request for the same page only in some browsers(这不是很好,当你必须调试这些东西...))。

希望这可以帮助别人。

+0

该解决方案为我增加了很多,谢谢。我遇到了服务器中缺少文件的问题。 – 2017-07-14 22:25:19