-
Notifications
You must be signed in to change notification settings - Fork 224
[HttpPlatformHandler]: Publish changes to web.config for IIS based hosting #2682
Comments
Wren the switch to the http platform handler happens, would newly published projects work on the versions of IIS that Helios runs on today? |
No Helios will be dropped completely |
My question was, would the new technique work on IIS 8.1+ even if it means that I have to make the process path absolute by hand? |
The module needs to be installed on IIS severs that want to run ASP.NET 5 |
Will these changes lead to being able to run .NET 5 without a .NET 4.x framework on the server? |
.NET 5 doesn't exist, you mean .NET Core? Yes. You'll install the HttpPlatformHandler and you'll be able to use it without installing .NET or ASP.NET for that matter on the server. |
@davidfowl so the module is available as an MSI/EXE/MSU? |
That's what I linked to |
Rats! .NET 4.x is so woven into WS2012/WS2012R2 that it's impossible to live without it (especially in an Azure VM situation). The Core Team Blog says, 'Don't even think about it!' |
To round out the story of loading the runtime from the cache, it would be great to make it easier to use dnvm to install dnx runtimes into a machine-wide location. |
@marcind That's already been done in the latest dnvm. There's a global install location now and it is appended to DNX_HOME. |
@davidfowl will using |
Whole system. |
Hmm, can't see |
We don't support |
So I havn't thought about the new process model when hosting in IIS, but assuming you're running multiple app pools with different identities, setting the machine location would be necessary to make the global dnx location work. |
If you're running multiple app pools, do you really want them all to share the DNX version? We didn't find much use case for There is definitely a use for a globally-defined |
FYI, it does look like the DNVM install script does not set |
Fail! 😀 |
I believe it was removed because it means DNVM setup has to be run elevated (at least it does in order for this to work). We can review that decision, it's super easy to put back in. |
I don't want all the app pools to share the DNX version. I want all the app pools to share the DNX runtime cache location. If I happen to have multiple apps targeting the same DNX version, then those binaries should be loaded from the same place. I agree that Here's how I want to script the deployment process for my apps
In general I want a model where a script driver pulls all the application artifacts onto the deployment host, based on what the application needs. I don't want to have to upload MSIs or whatever. If you want to wrap that script in an MSI, I guess that might be fine, but seems unnecessary. (do you get an ARP entry for every runtime? I don't care about that). I'm fine running dnvm elevated to get things bootstrapped. |
Yeah, that should be fine. We're absolutely targeting that scenario. The script that is used to launch your app would search |
FYI, you'd just be installing the one MSI (the DNVM MSI), not an MSI per runtime. I agree that we should have an MSI-less option though. |
- Changed web.config contents - Remove all traces of AspNet.Loader.dll - Added support for specifying iis command entry point in web.config - Merge xml elements with existing web.config - Will overwrite entries that are relevant to the httpPlatformHandler sections #2682
- Changed web.config contents - Remove all traces of AspNet.Loader.dll - Added support for specifying iis command entry point in web.config - Merge xml elements with existing web.config - Will overwrite entries that are relevant to the httpPlatformHandler sections #2682
- Changed web.config contents - Remove all traces of AspNet.Loader.dll - Added support for specifying iis command entry point in web.config - Merge xml elements with existing web.config - Will overwrite entries that are relevant to the httpPlatformHandler sections #2682
Need to put script files in approot since webdeploy can't see them. |
@davidfowl When is the cmd file change coming in? 👀 |
@davidfowl this bug good to close now? |
We need to change the web.config that publish generates to be based on httpplatformhandler based hosting.
Here's what a typical web.config looks like today for Helios:
Here's what the new
web.config
(tentative) would look like:The .cmd file also has to be updated to take variable into account:
Few notes:
web.config
, this might be an option..cmd
file e.g.We want to make this work with a global cache if it has a the version of the dnx installed. The .cmd file could be updated to detect the versions of runtime in DNX_HOME. This would look like:
I didn't test the above but the gist is to test if the DNX_HOME/runtime exists over the local one. This only applies if the full version was specified. Otherwise we'll use the one on the path. We could consider always some variable that would be settable from the outside to control aspects of running.
Features of helios:
The text was updated successfully, but these errors were encountered: