Deploy to localhost from Visual Studio - asp.net

I'm working on 'asp.mvc' web site. When i deploy it to 'iis express', site is available from 'localhost:333'.
I want to deploy this site to 'iis' (and keep url like localhost:xxx), but when i change 'iis express' to 'iis', i receive an error.
How to deploy site to iis 10 from VisualStudio 2013/2015 and access it from localhost:xxx?

By default IIS, is configured for port 80. Hence by default, in IIS it can be configured as http://localhost/webapplicationname
But it can override in IIS by either editing the existing binding for specific port or create an new website with the port 444 and configure the web deploy accordingly.

Related

How to access an ASP.NET web api that runs on localhost (IIS)

I built an ASP.NET Web API. I run it locally from Visual Studio on IIS Express. I need to access this api from other device from another network, so I understand that it has to be hosted on the development machine on IIS, right? What I read is that:
I need to enable IIS Manager in the Control Panel (source) - DONE
Assign the IP of the dev machine to the localhost (source; source 2) - I don't see my site in the IIS Manager under Sites, only see Default Web Site. Why is that?
I assume the site needs to be hosted somehow on the dev machine, because I need to stop Visual Studio, therefore the IIS Express will be stopped and the site would not be accessible, even from localhost right?
My dev machine has a public static IP and I can access this Default Web Site successfully from outside.
You should consider your API in IIS just as any IIS App. i.e. a website.
It needs to have an IP (or a hostheader value)
Lets say api1.example.com binded in IIS with your IIS Application.
Your DNS must resolve this to the IIS machine IP.
then you can access it in that URL.
You can also just hit the machine IP running the IIS web server (on the port you added for the api - if its not :80)
See "Bindings" in IIS
See this Video : https://www.youtube.com/watch?v=I32AnqJzD58

Trying to reload project but it says the following error issue IIS web server

The URL 'http:localhost:8081' for Web project 'XXX project name' is configured to use IIS Express as the web server but the URL is currently configured on the local IIS web server. To open this project, you must use IIS Manager to remove the bindings using this URL from the local IIS web server.
It's not allowing me to reload the project..May some thing went wrong while doing IIS set up...

Use Local IIS Web server for debugging

So I'm trying to setup a local test domain so I can have a subdomain using this article. My problem is that I can set up the sites fine in IIS and browse to files there. But when trying to setup visual studio to use the site for eg. In Project Url: http://localtest.me when I click Create VirtualDriectory I get the following error: Unable to create virtual directory. The URL 'http://localtest.me' is already mapped to a different folder 'C:\Websites\site'.
If I delete the site from IIS and allow visual studio to try create it, I get the following error: Unable to create the virtual directory. Could not find the server 'http://localtest.me' on the local machine. Creating a virtual directory is only supported on the local IIS server. But the site localtest.me poits to 127.0.0.1, which is my local machine right?
So how do I set up debugging in a scenario like this where I already created the site in IIS?
Instead of using the "Use Local IIS Web Server" setting in visual studio I always check "Use Custom Web Server" and point it at my local url. for your example localtest.me with the start url above set to localtest.me
If you still run into problems you can always get into debug mode but doing attach to process instead of F5 and selecting the IIS process.

Visual Studio tells me that an operational local IIS URL has not been configured

I am trying to get a web application project working, after we moved from a StarTeam repository to a TFS repository. I have a web site on my local IIS for the project; this web site is up and serving static content when I test it, but when I copy and past the URL to that site into the Local IIS Web server's Project Url in VS 2010, I get a message that the local IIS URL has not been configured. The popup that displays this message offers me the chance to create a new virtual directory, but this fails. Anyway, this is not what I wish to do.
I usually find myself setting things up in IIS and then copying the URL into VS, but I ensure:
IIS has IIS6 management compatibility components installed.
The folder in IIS is the root of a web application.
The app pool for the web app is configured with the correct .NET version.
And to add to Richard's answer:
Ensure the site's binding in IIS is set to "All Unassigned"

Run ASP.NET application as Default Web Site on dev machine

I am trying to run my ASP.NET Web Application Project in my Local IIS Web Server instead of using the Visual Studio Development Server. It seems to only allow me to run my application in a Virtual Directory off of the Default Web Site. However, I would like to run the application in the root of the Default Web Site itself.
I go into the properties of my project, go to the Web tab, click the User Local IIS Web server radio box, and change the Project URL to http://localhost/. However, when I attempt to save, it tells me I need to configure the Virtual Directory, although I am not using a Virtual Directory.
Has anybody made this work before? Thanks!!
It sounds like localhost port 80 is already in use.
IIS creates a default web site that listens on localhost port 80. Have you disabled that before trying to add yours?
Another approach is to have your site listen on a different port, 81 for example.
So far I used a Post-Build event to copy the contents of my project to c:\inetpub\wwwroot\ and I set the Start Action's Start URL to http://localhost/. Not very elegant, but it gets the job done. I would love for somebody to include a more elegant solution.

Resources