a really wierd problem has suddenly popped up yesterday. In short, authentication to an ASP.net application hosted on my Windows 2003 server suddenly failed. There was no error message, i.e. the loginview control apparently confirmed that user's credentials properly, but the user was not authenticated and the application always returned to the welcome screen instead of processing further. When I logged in from within the local network, it worked fine.
I have meanwhile found the cause of the problem, and now need some advice on how to fix it, but I need to explain some background first: lets assume the asp.net server is named www.complexname.com
. Users, however, are supposed to use www.friendlyname.com
. I have set up a hidden http redirection in my DNS-provider's system (domaindiscount24.com) which redirects www.friendlyname.com
The problem occurs if users log in using www.friendlyname.com
. It works fine if they use www.complexname.com
(which they are not supposed to). It also works if I change the redirection type to "simple (301)", but then the users see that they are redirected, as the real address www.complexname.com
appears in the URL-line of their browser (which is not desired). BTW, the provider implements the "hidden" redirection by using frames. Here's the code of that redicrection page:
rameset BORDER='0' frameborder='0' framespacing='0' rows='100%,*'>
<frame name='target' src='http://www.complexname.com'
<noframes> <body BGCOLOR='#FFFFFF'>
This page requires that your browser supports frames.
<BR>You can access the page without frames with this <a href='http://www.complexname.com'
What is odd is that this has worked for a long time now, and suddenly yesterday it didn't work anymore.
Is there a way I can get ASP.net authentication to work even if the application appears in the frame of some other server's web page?
Thanks a lot for any hints and suggestions.