Unable to run migrated web application in VS2013 - asp.net

I have an ASP.Net web application developed in Visual Studio 2008 (.Net 3.5). I have copied this solution to another root folder (both on my Win7 64b machine) and upgraded the copy to VS2013 (Professional) and .Net451, but when I try to debug the web app in VS2013 I get an Access Denied error ("Unauthorized: Logon failed due to server configuration. Verify that you have permission to view this directory or page based on the credentials you supplied and the authentication methods enabled on the Web server"). I don't have this issue runing the original from VS2008 on the same machine.
Apart from the changes mentioned above the two are a straight code copy.
In VS2008 the project Web properties are: Use Visual Studio Development Server, auto-assign port, Virtual path = /
In VS2013 the project Web properties are: Server=IIS Express, Project URL=http://localhost:63064/ (and I have clicked on Create Virtual Directory)
I can see this must be some sort of security issue, but what extra needs to be done to get a VS2008 web app, upgraded to VS2013, to run within the VS2013 IDE?
Postscript: If I start the web app without debugging (ctrl-F5) I get "HTTP Error 503. The service is unavailable."

It turns out that the simple solution is configure the web app properties in VS2013 to use the local webserver (IIS) instead of IISExpress, and also to run VS2013 as administrator (but this is not necessary for VS2008). So obviously it is an IIS permissions thing but IIS is common and hasn't been changed - so what has changed in VS2013 to make this necessary? I don't really want to run VS2013 as administrator if I can avoid that.

Related

Trouble deploying my asp.net app to an IIS 7 server

I'm having trouble deploying my ASP.NET application to a remote IIS 7 server.
the app When tested Visual Studio 2012 the app runs properly without any issue.
I've written the app to have a couple of pages and some classes to support it.
They are all on the same namespaces. However, I deploy it on an IIS 7 server on another machine it seems to not able to recognize the classes that I've wrote to include with the application.
Here's the solution explorer to show the layout of my project:
SoltionExplorer
And here's the error that I've got when deploying it to the remote IIS:
Here's the Error on my remote IIS
Any help is appreaciated. Thanks.
// Addtiionally===========================
I don't think the issue is because of the wrong version of framework running on the iis server or that it's not compiled right on VS. I've checked on IIS Netmgr the application pool is all runing on v4 of .NET. I've renamed the extension method to : IsNullOrEmptyOrWhieSpacesz (with a z at the back) it's still showing the same error.. but with the z at the back also. Somehow I think I deployed my asp.net wrong.. I just copied the whole folder that has the aspx file onto my IIS folder. It could be why iis is not seeing my extention method classes.

How to publish ASP.NET Core 5 Web Site to IIS?

I installed Visual Studio 2015 RC and created the sample Web Site project.
I published it in Visual Studio using its publishing tool to file system. The output is:
I tried to target IIS both this folder and wwwroot folder but nothing changed. I always receive an Access is Denied error.
Checked the permissions. They are OK. I'm always able to run my other web sites...
I want to publish it targeting clrcore. But I already tried to publish it using clr and failed there too. It is the same error.
How is the publishing process should be when I want to run a coreclr website in IIS? And I don't even know if it is possible to serve a coreclr project on IIS.
By the way there is nothing about .NET Core in application pools dialog in IIS. So I don't know what could my poor IIS do here.
There are full instructions from MS:
http://docs.asp.net/en/latest/publishing/iis.html
TL;DR
You need to install HTTP platform Handler. Other than that, if you could get a standard MVC 5 app to work, you should be ok. The only change I needed to make was installing the plstform handler.
Of Course, In VS I publised to a folder, then copied the contents to the Web server. The root folder to the site must point to the wwwroot and the approot will be at the same level.
As far as I know, You can't host ASP.NET Core 5 Web Site on IIS, it works with self hosting only.

When creating a new project in Visual studio 2013 I get an error because they are automatically trying to use IIS express

When creating a new Web API ASP.NET project I get the error "Configuring IIS Express failed with the following error: Unable to access the IIS metabase. You do not have sufficient privilege to access IIS web sites on your machine.
The problem with this error is that I don't even have IIS express installed any more so I want to associate new projects with regular IIS. I can manually change the settings of the project by opening it in notepad. But this is pretty annoying and I can't see where to change the default.
Any help appreciated. Thanks.
When creating web project in VS, IIS Express is assumed to be on the machine (because VS puts it there). If you've removed that required dependency, your machine is in an unsupported state. Why not just have IIS Express installed, and change the projects after creating them?

Configuring ASP.NET to run under IIS in Windows 7

How do I configure an ASP.NET application to run under IIS in windows 7? I am using Visual Studio 2010 and when I run my web app I am getting an error message that you do not have permission to access the web server.
you have a couple of options.
1) copy the files to your inetpub\wwwroot folder then open iis manager and create an application in the Default Web Site of the folder you just created.
2) in Visual Studio, you can publish
3) in Visual Studio, you could open the properties page of the web application, click on the web tab and in there, an option for creating the virtual directory exists. Press it - it creates the virtual directory and you can then run the website using that url. VS will automatically launch the site pointing to IIS when you run the app
remember, be sure you are running in Administrator mode (if using UAC).
one more thing - be sure you have installed IIS (Programs and features > Internet Information Services)

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

Resources