CakePHP Minify插件并拒绝访问webroot下的原始文件


CakePHP Minify plugin and denying access to original files under webroot

我们在运行Apache 2.2的CentOS服务器上使用CakePHP 2.7.9和Minify插件。
https://github.com/maurymmarques/minify-cakephp

该插件工作正常,现在我们可以像这样缩小 css 文件。

echo $this->Minify->css(array('default', 'global'));

上面的代码生成这样的 URL。

http://example.com/min-css?f=default.css,global.css

现在我们要拒绝访问webroot/css下的原始文件。 如何在 CakePHP 中完成? 我们希望返回 404 或 401 或类似的东西以进行这样的直接 URL 访问。

http://example.com/css/default.css

现在我们想拒绝访问webroot/css下的原始文件

只是不要,但非公共代码和文件进入公共网络根目录。无论如何都不建议这样做。将缩小器指向文件并将其输出文件夹设置为 webroot。

我们使用任务运行程序,并将缩小代码保留在实际应用程序之外。这是不属于应用程序本身的东西 - 恕我直言。

我们使用php Robo和JS端的Gulp进行缩小,并在部署时自动触发任务。我们所有的SCSS和JS文件都在webroot之外。我们的应用程序代码中只有几个资产包含,它们几乎永远不会改变。Robo 和 Gulp 有观察程序,可以在我们更改资产文件时重写资产文件,当部署应用程序时,它会自动生成缩小的文件。