使用asp.net在开发机器上创建无cookie应用程序

ak3*_*t0n 9 asp.net iis-7 cookieless

我尝试在ServerFault上发布这个没有运气,所以我在这里尝试.

我正在考虑设置一个新域来托管我的网站上的静态内容,并让它像Stackoverflow一样使用静态域进行无 cookie .因此,在继续购买域并设置它之前,我想首先在我的开发机器上在localhost下测试它(我必须提到我计划在我的新域上运行IIS以获取静态文件).

因此,我在IIS下创建了一个新应用程序并禁用了会话状态和表单身份验证 当我的主应用程序需要像css,images和js这样的资源时,我会使用它们托管的"静态"应用程序的路径.

问题是,当我查看请求和请求文件的响应时,他们仍然定义了session_id cookie以及asp.net身份验证cookie.

是否有可能完成我在开发机器上尝试做的事情,或者我必须继续购买新的域名,希望能做好事情吗?我试着阅读关于cookieless域名,但无法弄清楚我可能会遗漏什么.

更新

我的设置如下.我创建了两个Web应用程序. - 网站的一个Web应用程序 - 一个静态的Web应用程序(css,图像,脚本......)

这两个应用程序都添加到IIS中,并且它们都不是另一个的子应用程序.(它们都是IIS结构下的独立网站).

我想知道两个网站在同一个IP下是否可能解释了我的结果,但是当我部署这两个网站时,问题就消失了.

Jon*_*ams 7

确保您具有以下web.config设置:

  • <sessionState mode="Off" />
  • <authentication mode="None" />

我认为这就是全部,尽管我还没有测试过.为了安全起见,您可以使用IIS 7中创建静态内容网站的建议来 禁用所有模块,并且只在必要时重新启用它们:

<system.webserver> 
    <modules>
        <clear />
        <add name="StaticFileModule" ... />
        ...
    </modules>
    ...
</system.webserver>
Run Code Online (Sandbox Code Playgroud)

PS:有关设置缓存值的提示,请参阅此答案.


Asa*_*sad 0

问题是,当我查看请求文件的请求和响应时,它们仍然定义了 session_id cookie

这是因为HttpRequest.Cookies是对象的属性Request


这可能有助于理解