是否可以在.NET中以编程方式设置sessionState模式?

时间:2009-07-31 08:31:32

标签: c# session mobile-website cookieless

对于为移动电话提供内容的c#网站项目,我需要使用sesion状态。移动浏览是一个棘手的领域,你不能依赖cookie,因为有些网络会删除它们,或者某些手机根本不支持它们。

.net的无cookie会话对我来说是完美的解决方案,但它们有一些缺点。例如,会话开始时的应用程序.net使用AspxAutoDetectCookieSuppor = 1参数重定向用户当前页面本身,以检查是否支持cookie。

这对我来说并不理想,因为每次请求都会被重定向至少一次并且搜索引擎不喜欢这样。

我的问题是,如果有任何方式在global.asax中设置会话状态模式或在会话启动时使用http处理程序,那么我可以控制它的模式并为搜索引擎机器人设置false

2 个答案:

答案 0 :(得分:0)

您可以尝试检测浏览器代理(因为每个搜索引擎机器人都拥有自己的代理版本,这可能会很困难)并对所有页面使用BasePage类,如果浏览器代理是搜索引擎则将EnableSessionState设置为false

答案 1 :(得分:0)

正如Jeff在他的播客中谈到的那样,您可以为搜索引擎设置专用服务器并将其流量路由到它。这样就可以为Google / etc ..正确配置它,并为其他人配置不同。

我知道从管理角度来看这不是最简单的解决方案,但它是一种选择。

相关问题