所以,最近,在累积了不少js和css文件之后,我开始考虑我正在进行的所有http调用。
由于我使用PHP inlcude作为页眉和页脚,每个页面都调用了每个非常低效的脚本。所以我开始在带有php的页面中使用条件语句来只调用所需的文件。
然后我想,嘿,通过制作一个巨大的css.php和一个来减少所有这些http调用(即使现在每个页面都有多个外部js或css文件)也不会更聪明巨大的js.php,只是将它们分别包含在页眉和页脚中,并在这些文件中使用条件语句?
最终结果是那些大文件将被处理服务器端,并且每个页面将直接在头部和jss直接在主体底部获得其css,其中包含所需的所有代码,并且不超过这一点。
有什么理由不这样做吗?关于这个想法的一般想法?其他人是否已经这样做了,我只是错过了船?
答案 0 :(得分:1)
如果您真的担心所有的http调用,请考虑详细了解PHP和AJAX(jQuery)。如果做得好,它可以非常快 - 而且也很酷。此外,请记住,在大多数情况下,您的浏览器将缓存您的css / js。
答案 1 :(得分:0)
您可以将以下代码添加到js.php(第一个代码行)
<?
Header("content-type: application/x-javascript");
这是对css.php
<?
header("Content-type: text/css");
答案 2 :(得分:0)
那么,除了进行HTTP调用之外,您的浏览器还会使它们成为有条件的。并且从服务器获得响应只有一个HEADER而不是acctual文件,它已经很好地在浏览器中兑现了。
如果您仍然认为这些HTTP调用对您的服务器来说过于沉重 - 请不要忘记在伪造的JS文件中实现相同的行为。
答案 3 :(得分:0)
我本来希望将这个答案授予Marc,但他没有正式回答,其他人都不在。也许我没有清楚地问过这个问题。
无论如何,答案是这不应该真的完成,好像每个页面只获得它需要的css和js以及避免无关的HTTP请求是有效的,结果文件对于每个页面总是唯一的页面,因此,实际上不可缓存。
感谢大家的投入!