Click here to Skip to main content
15,885,309 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi all,

I'm facing a really weird scenario here with my local IIS. I have hosted multiple sites in the default website in my local IIS. One of them has the login page. From the login page, I'm redirecting the user to another page that is located in another site (which is also hosted in the same IIS inside default website virtual directory).

Now in the submit button click event of my login page, after authenticating the user, I have written a "Response.Redirect(redirect_url)". the redirect_url is being formed dynamically and given as a parameter to the Redirect method.

While debugging, the final redirect_url that is being sent as parameter to Redirect method is:

http://localhost/CP/web/console/console.aspx?sk=3e3cc1a8-73c4-4945-b3f8-08af22ea4324.50008


But after I try to go to the next step, I'm suddenly getting a HTTP 404 error saying that the resource doesn't exist and I have observed that Requested URL shown in the error page is different that what was dynamically sent to the Response.Redirect(...) method.

In the error page, the requested url shows the value as

http://localhost/CP/web/console/localhost/CPLogin?err=5

whereas my actual requested url formed in the code is:

http://localhost/CP/web/console/console.aspx?sk=3e3cc1a8-73c4-4945-b3f8-08af22ea4324.50008

I'm just unable to understand why the requested url is getting changed automatically.! Also, I observe that "localhost" is being appended to the requested URL again which is not what is supposed to happen.

Please visit THIS link[^] to understand this question more clearly. I have added screen shot of the error page and also my code snippets.


http://amoghnatu.wordpress.com/2013/09/16/question-please-help-iis-throwing-http-404-not-found-but-requested-resource-actually-exists-requested-url-also-changing-automatically/[^]

Thanks a lot.!
Posted
Updated 10-Feb-20 21:04pm
Comments
hitesh_tech 16-Sep-13 9:11am    
what is CPLogin is this aspx page or folder inside localhost ?

It seems that you have any of following scenarios running with you

1- Request was arrived on the right page "Console.aspx". But inside errorHandling you received code 5 and then you redirected it to page CPLogin with querystring parameter err=5. [and while redirection your redirect URL goes invalid]

2- If not point 1, Go to your web.config file and check for your Authentication -> Forms -> LoginURL property. "It might be a case that you are redirecting a user to the link [you are facing 404] as a default page"

3- if not point 2, Go to your web.config file and check for your CustomErrors -> DefaultRedirect. as you might be getting some error on your page Console.aspx and then it automatically gets redirected to CPLogin.aspx [again here your redirection URL is not correct which cause 404 and wrong invalid URL displayed in address bar]
 
Share this answer
 
v2
Indeed, the problem was with the way I had hosted the sites in my application. I just removed all the sites related to my application from IIS and then hosted all of them again much more carefully. This resolved the "wrong redirect url" problem.

Also, I had some tables with missing required data because of which I was getting the error code.

So after I got all the tables filled with the required data and also after properly hosting the application in IIS, my problem got resolved.
 
Share this answer
 
I had the same problem, but resolved it in the binding. In my case I had two ip addresses but only one was bound when the website was created. It was resolved by adding a second binding that featured the 2nd ip address.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900