10 มิถุนายน 2554 14:33
I am using AppFabric and want to enable AutoStart on the root of a site.
To be able to set the AutoStart option to [Enable,Disable,Custom] you have to bring up the "WCF Configuration for Applications" dialog. This is not reachable in IIS Manager for the Site Root Default Application, there is nothing to right-click on. If you right click the site and bring up the "WCF configuration for Sites", if you right-click the server name you bring up the "WCF Configuration for Server".
If you add a virtual directory and Convert to an application you can reach the WCF Configuration for Applications dialog.
I have found no way to access this dialog and had to manually edit the ApplicationHost.config file as explained in the MSDN article but it also says that these settings cannot be changed for the default site. "...because the auto-start mode for the default application is set to Disabled and cannot be changed."
Why can this not be changed?
It is a major drawback, I don't want my web services hidden under another virtual directory which adds to the URL path.
You can change it, by hand, but are you saying it will not work and is ignored?
11 มิถุนายน 2554 4:02
The limitation is only in the config GUI - it won't let you adjust the settings on a root app. But if you modify the applicationHost.config like you mentioned, the runtime will honor those settings on the root app.
- ทำเครื่องหมายเป็นคำตอบโดย Gatecrasher 11 กรกฎาคม 2554 11:18
27 มีนาคม 2555 15:04
I found that the IIS UI is not that great for configuring applications - especially when trying to setup the Site Root as an autostart application. The best way to manage it is by using the Configuration Editor that comes with AppFabric under the Computer Name -> Management of Features View.
To make a Site Root an autostart application - you need to locate the Section system.applicationHost/sites and click the (Collection) entry. Click on your site name in the list of sites and click (Collection) once more. Select the application in the list and assign the serviceAutoStart="True", serviceAutoStartMode="All", and serviceAutoStartProvider="Service". Also enter net.pipe for the enabledProtocols ("http, net.pipe").
You also need to change the application pool setting to AlwaysRunning. To locate this setting, use the Collection Editor to navigate to the Section system.applicationHost/applicationPools. Click the (Collection) value and then select the application pool used by your root site and assign startMode="AlwaysRunning".
At this point, you can script your changes via "Generate Script" or apply them immediately using the "Apply" action. Hopefully this helps someone else who was as confused as I was about the issue. To test the configuration, you can issue an iisreset to see if your w3wp.exe process starts immediately.
- แก้ไขโดย SliverNinja 27 มีนาคม 2555 15:05