我想尽可能地使用memcache缓存我的网站。有一些罕见的修改(有点像在论坛中),一旦做出改变,我完全可以重新缓存。我唯一关心的是登录信息(类似于stackoverflow如何在顶部有一个栏)。这就是我现在正在做的事情:
$('div#user_bar').load('/login-info/');
(完全缓存页面上的jQuery加载userinfo)
然而,我认为我可以完全没有动态页面。我的想法是:
On login: create cookie `logged_in`:true
On each page: if JS finds cookie is set: show links to logout, settings, etc
if not: show link to login page
On logoff: delete cookie
没有实际的userinfo存储在cookie中,甚至不存储用户名。
这有多安全,合理,理智?有任何想法吗?我错过了什么吗?谢谢。
免责声明:这不仅仅是一种练习而非生产环境。但我仍然在考虑保持安全性和性能。
答案 0 :(得分:0)
关于您的主要目标:缓存动态页面是合理的。如果您在ASP.NET平台上工作,您可能希望查看输出缓存功能,该功能正是如此,甚至包括动态替换。 4 Guys from rolla.com有一篇不错的首发文章,其中包含指向所有细节的链接。
关于非用户专用页面:我怀疑这可以用于除最简单页面之外的任何内容。 Web应用程序通常允许不同用户进行不同的操作,如果只是更改了密码。您可能必须在某个时刻将专门的内容传递给客户端,这就是ASP.NET输出缓存的动态替换发挥作用的地方。