我有一个网站,所有的文件都是php文件,在服务器上,我们也有htaccess为友好的url重写,即./about
我们已经通过PHP对JS和CSS进行了缩小,但是由于HTML位于实际页面上,在PHP添加到页面的动态位之后,但在服务器将其发送回客户端之前,是否有方法缩小HTML?
我试过实现minify,但是回调函数没有错误地打断了页面。
最佳答案
如果我们讨论的是动态缩小飞行中的所有东西,我会建议你谨慎看待这是一种优化。
是的,可能会节省大量带宽。是的,您的用户可能会从较小的下载中获得性能提升。
但是,如果您正在使用PHP动态地缩小您的文件(这听起来像您正在做的事情),也有可能实际上是在为最终用户放慢速度。
缩小最好在静态文件上完成。将它们缩小一次,保存它们,并在请求文件时将缩小的文件提供给浏览器,而无需进一步处理。每次请求文件时都使用PHP进行这项操作可能会带来很大的性能开销,这很容易抵消较小下载大小带来的好处。
缩小HTML通常不如Javascript有效。缩小PHP生成的HTML的最好方法是从HTML模板文件中去掉不必要的空白。这通常是一项非常简单的任务,而且不需要专用的minifier工具——最简单的方法就是从文件中删除所有缩进。空白在HTML中是相关的,所以你不能把它全部去掉,但是丢失缩进应该可以处理它的大部分,同时方便地让文件保持合理的可读性。
所以我的建议是尽可能静态地缩小你的文件。但是如果你必须在飞行中完成它,不要使用PHP来完成这项工作。使用专用的服务器插件,例如Google的mod_pagespeed。这个插件将在文件被请求时为您缩小文件(速度比PHP快得多),并且还负责缓存缩小的版本,以将性能影响降到最低。
希望能有所帮助。
关于php - 通过htaccess缩小动态PHP页面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13350847/