Running ASP.NET Apps on IIS6 - asp.net

I have a .NET 2.0 ASP.NET app built using VS2013. It runs fine on IIS7.5/Windows7 in a .NET 2 Classic Pipeline App Pool. However when I try to run it on IIS6/Windows 2003 server I get 404 Page Not Found.
I have installed .NET 2 (+SP2) on the Windows2003 server of course, as well as registering with IIS using aspnet_regiis -i. I have set the framework version of the app accordingly. I have checked the file system permissions and confirmed that the IUSR_* account can access the web app files. The authentication type for the app is 'None'. The default page list includes Default.aspx which is correct.
It's seems ASP.NET isn't kicking in, what am I missing?

Turns out I had neglected to allow the ASP.NET Web Service Extension:
IIS 6.0 Serves .html and .asp, but not .aspx

Related

Is there any way to see actual application error in a website hosted in IIS?

A legacy .Net webform application is hosted in IIS is running fine in old server having .Net framework 2.0 in it. I don't have source code of the application. I have just existing published DLL which i have copied from old server to a new server having .Net 4.7 framework by default and hosted it in new server's IIS.
While browsing the application, it is showing an default configured Error.aspx page which developers may have configured. So, in case of any error the application will navigate to Error.aspx page.
I am not able to figure out the actual .net error.
How can i get the actual error or is there any way to debug that ?
You can find errors in iis log (default path is %SystemDrive%\inetpub\logs\LogFiles).
Also you can enable detailed error message in browser. Link

RESTFul service works in IIS Express / VS2013 but not on IIS Server

I developed a RESTFul Web Service in VS 2013 and it works fine locally on IIS Express.
I publish to a package which I transfer to another PC and using IIS Manager I import the zip file as part of the Default Web Site.
Loading the url in a browser always leads to a "Server Error in Application" HTTP error 404 (or other 40x error).
I've tried to different implementations, one with svc file and one without. Also setting target framework in web.config = 4.0 and setting the Default Application pool to .Net V4.0
How do I get my service (which runs fine from Visual Studio) to work in IIS?
I found an update from Microsoft to enable IIS 7.5 handlers to handle requests whose URLs do not end with a period
My Windows 7 would not install this update so I ran Windows update to apply many updates. Although none looked directly related to extensionless urls it did the trick.
I imported my application using IIS Manager as before and it works fine!

Upgraded app to MVC 4, AUTH_USER is blank

I have a hybrid classic ASP + ASP.NET MVC 4 application running under Win Server 2k3 (IIS6) which we have upgraded to use MVC 4.
The ASP app is attached to the .NET application via a virtual directory. They run in the same application pool (if that matters). This particular app is an admin control panel, and uses basic authentication:
Before upgrading the project, when access the url for the virtual folder, the browser would display a login prompt, where I enter my domain-qualified username and password. The ASP code then retrieves the user name via Request.ServerVariables("AUTH_HEADER"), compares that against an application-level permissions list stored in the database, and enables or disables features in the admin site based on that.
After upgrading the project, I still get the login prompt, but Request.ServerVariables("AUTH_USER") returns an empty string.
I've added the old project into a new website so I can run them in parallel on the same server. The old code continues to work. The new code refuses to. The admin virtual directory in each version of the .NET application points to the same physical location on disk, and the authentication configuration for the folder in both .NET apps is identical.
Suggestions? Note that the MVC 4 app is using the .NET 4 framework, not .NET 4.5, which is not installed on the server.
Note that, although the default domain field in the screenshot is blank, it is properly configured. I've removed it from the image for obvious reasons.
Request.ServerVariables("AUTH_USER") can be obtained when you configured your application to use Forms authentication not Windows Authentication. If it is Windows Authentication you should use Request.ServerVariables("LOGON_USER")

How to host an ASP.NET Web Applications site on IIS 7

I'm locally working on an ASP.NET Web Applications site. It's almost finished so i wanted to try and put it in an IIS server.
The IIS server is running on a different server. What do i need to do to run my ASP.NET web site in that remote IIS server?
I tried to following:
I copied my entire project directory (so including the .csproj file, the bin folder etc.) to the following location on the remote server, where IIS is running C:\MyProject.
In IIS manager i added a Virtual Directory under Default Web Site. Located my Web Site files in C:\MyProject and added that folder. Then in IIS manager i converted that Virtual Directory to an Application.
But when i browse to my Web Site i get an error:
HTTP Error 500.23 - Internal Server Error
An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.
So this is probably not the way to do it. I don't think i can just do a Deploy, because i never set up any .axd(?) or anything.
So my question is, what do i have to do in order to run my Web Site on IIS..?
The error will be probably because of, you developed the site in .net version 2.0 and try to run under the Integrated pipeline apppool that runs under .net framework 4.0.
SoL:
Create a new apppool with classic mode and .net framework equals to your application developed framework.
attach the newly created apppool to your virtual directory.
Note: For deployment, you don need to copy .csproj or unwanted solution files to destination location.
If it is otherway around, (i.e,) application is .net 4.0 and apppool is 2.0 please follow the below steps.
Update .net framework in the server to 4.0 if you have only 2.0.
Then register .net 4.0 version in IIS by running the following command in command prompt.
C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i
Try changing Application pool to Classic. To do that open Advanced settings of your application in IIS manager and change Application Pool. There should be "ASP.NET v4.0 Classic" or something similar according to your framework version.
http://technet.microsoft.com/en-us/library/cc731755(v=ws.10).aspx

Local IIS Website Errors

I am using Visual studio web developer 4.0, in which I am creating a locally ISS hosted website.
My problem is while I am opening the website from visual studio I am getting errors such as:
ASP.NET 4.0 has not been registered on the webserver. You need to manually configure your web server for asp.net 4.0 in order for your site to run correctly...
When I am trying to serve a debug website I am getting the error:
Unable to start debugging on the server. Could not start asp.net debugging. More information my available by starting the project without debugging.
Then I navigated to my startup page without debugging and then the error in browser is
The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map.
I have tried registering asp.net with aspnet_regiis -1. I'm using windows 8.
You have two options:
Manually configure web server for asp.net 4.0
Reinstall .NET framework
Number two is recommended.

Resources