开发者

Session lost when using hostname instead of IP address (IE)

I'm learning asp.net mvc 2, it's very excting with me.

I has built a small MVC2 application, it is working fine in built it ASP.net Development Server. However, there're something wrong when have it deployed in IIS 7.开发者_运维技巧5, Window Server 2008 R2 Enterprise. Session is awlays null when I access the application by IE and use hostname to specify the url.

Using IE (IE 7 or IE8) to access my application with link http://localhost/ or ipaddress => every working fine

But when I use IE (IE 7 or IE8) to access my application with link http:/hostname/ => session always null

I'm supprised while FireFox working fine in all cases, both of built in ASP.net Development Server and IIS server, both cases hostname and ip and localhost.

I really appreciate your advise!

Thanks


I figured out the problem, that caused by the web server host name which has an underscore. Thanks all.


@khoailang

I had the same problem and figured out the issue with IE occurs when you use a machine name with underscore in its name.

eg. machine_01/app/Default.aspx => Session Lost!

while 10.100.0.1/app.Default.aspx works where 10.100.0.1 is the IP for machine_01.

Any idea why this happens?


If you are using cookie based sessions it could be that you are not allowing cookies in IE.

I believe by default the session identity is stored in a cookie between requests to allow the application to reconnect to its session data.

You can use cookieless sessions which append the session identity to the url as a querystring, or at least in webforms - I'm not sure how this behaves in mvc.


As per http://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_host_names:

The Internet standards (Request for Comments) for protocols mandate that component hostname labels may contain only the ASCII letters 'a' through 'z' (in a case-insensitive manner), the digits '0' through '9', and the hyphen ('-'). No other symbols, punctuation characters, or white space are permitted.

Underscores in hostnames cause a number of strange, inconsistent problems, including problems sending mail, sql replication not working in unexpected ways, and most RDP connections failing.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜