0

我想知道在登录用户和访客有不同内容的情况下缓存 php-output 的最佳方法是什么。“不同”意味着客人在该页面上看到的文字更少、没有评论并且功能更少(例如,他们无法将当前页面标记为收藏)。

我可以为可以访问页面的每个“模式”创建一个文件。所以我必须检查用户是否登录,然后决定我服务的缓存文件。
另一方面,我可以为每个页面只创建一个文件,并在该文件中使用 php-code 来决定打印出哪些内容(或者更好的是,打印多少内容)。

我更喜欢第二个选项,因为这意味着内容或部分内容不会存储两次。此外,我可以确定没有用户可以通过调用缓存文件来访问完整的内容(无论如何它在名称中使用哈希)。但是,我不确定我是否将所有相关事实都纳入考虑范围。我想知道我是否错过了一些(不利)优势或其他可能的方法。

4

1 回答 1

1

我更喜欢第一种方式,它还使您能够以不同的方式缓存这些视图,例如。当添加新评论时,只需要重新渲染成员缓存;第二个也迫使你生成代码,并在以后包含,听起来像 php-selfmodifying-code,地狱调试

于 2012-07-16T16:46:30.300 回答