Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Run ASP.NET 5 (MVC 6) using .NET Core on IIS

I have just created a quick ASP.NET 5 MVC 6 app on Visual Studio.NET 2015 RC and would like it to run on my IIS web server on Windows 7.

Normally, when I create a website on IIS, I need to choose an Application Pool, either v2.0 or v4.0 Integrated.

Now because .NET Core comes with all its libraries as nuget packages, how can I run it on IIS? which application pool do I pick? how does this work?

like image 982
Cindro Avatar asked Apr 30 '15 16:04

Cindro


2 Answers

Update

As @wickdninja stated, the below is outdated. Use his updated solution instead: https://docs.microsoft.com/en-us/aspnet/core/publishing/iis To get the application to run on IIS:


  1. Create a website under a v4.0 app pool.

  2. Bundle/publish the application using dnu publish. This will create a self contained package that has the application, the runtime and all the dependencies. Change the runtime name to match the runtime of your choice.

      dnu publish --runtime dnx-coreclr-win-x86.1.0.0-beta5-11625
    

    You can even pass --no-source if you don't want the application to be compiled from sources every time it starts.

  3. Copy the bundle (from bin\output) under the website root.

  4. Run

Things that might go wrong:

  1. The IIS bitness (32/64 bit) must match the bitness of coreclr.
  2. If you don't copy the bundled website under the website root, make sure the account under which IIS runs can actually access the runtime folder.
like image 188
Victor Hurdugaci Avatar answered Oct 22 '22 13:10

Victor Hurdugaci


This question is out of date, and Microsoft has since release pretty thorough documentation for this scenario. You can find it here: https://docs.microsoft.com/en-us/aspnet/core/publishing/iis

like image 23
wickdninja Avatar answered Oct 22 '22 13:10

wickdninja