Skip to main content
Participant
February 24, 2009
Answered

W2K8 Server Core, IIS 7, CF 8.0.1 and wsconfig

  • February 24, 2009
  • 5 replies
  • 3499 views
We have CF 8.0.1 (x64) installed onto W2K8 Server Core and IIS 7 (x64). (See code section for IIS 7 install command and CF silent installer.properties.) Remember, 2008 Core does not have a GUI, it's all command line.

We can view the default IIS page on port 80, and CF Admin on port 8500.

When we run the web server configurator (wsconfig) it throws a Java error about "side-by-side configuration".

Adobe support initially claimed the install was 32-bit until they walked us through 2 installs (one for standalone and the other for jrun), before they were convinced it was 64-bit.

Adobe support is currently (I hope) investigating why wsconfig throws a Java error when trying to configure IIS 7 for a connection from CF 8.0.1. Adobe support suggested that we complete the configuration manually and pointed us to some documentation:

1) http://www.adobe.com/products/coldfusion/faq/
2) http://kb.adobe.com/selfservice/viewContent.do?externalId=kb402572
3) http://livedocs.adobe.com/coldfusion/7/htmldocs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=ColdFusion_Documentation&file=00001755.htm
4) http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_19575&sliceId=2
5) http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_19575
6) http://www.communitymx.com/content/article.cfm?page=7&cid=224AA

What we need to do to complete the config is:
1) Configure the IIS Web Service Extensions for CF (jrunwin32.dll and jrun_iis6_wildcard.dll)
2) Configure the File Mappings (*.cfm, *.cfc, etc,)


Defining 'index.cfm' as a default document, at a global level is straightforward:
appcmd.exe set config /section:defaultDocument /enabled:true /+files.[value='index.cfm']

But the other 2 steps are more complex. Commands we are using are along the lines of:
REM adds web service extension (first security, then isapi filter)
appcmd.exe set config /section:system.webServer/security/isapiCgiRestriction /+"[path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\jrun_iis6.dll',allowed='True',groupId='Macromedia',description='Macromedia Server Extensions']"
appcmd.exe set config /section:system.webServer/security/isapiCgiRestriction /+"[path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\1\jrun_iis6_wildcard.dll',allowed='True',groupId='Macromedia',description='Macromedia Server Extensions']"

appcmd.exe set config /section:system.webServer/isapiFilters /+"[name='Macromedia Server Extensions',path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\jrun_iis6.dll']"
REM the following needs a unique name
REM appcmd.exe set config /section:system.webServer/isapiFilters /+"[name='Macromedia Server Extensions',path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\1\jrun_iis6_wildcard.dll']"

REM add file mappings (needs a path to a dll, which one?)
appcmd.exe set config /section:system.webServer/handlers /+[name='ISAPI-cfm',path='*.cfm',verb='*',modules='IsapiFilterModule',resourceType='File',requireAccess='Execute']

Any help with getting the IIS 7 configred for CF would be greatly appreciated.

Kenneth
This topic has been closed for replies.
Correct answer KennethaMackenzie
Installing Visual C++ 2005 x64 (available at http://www.microsoft.com/downloadS/details.aspx?FamilyID=eb4ebe2d-33c0-4a47-9dd4-b9a6d7bd44da&displaylang=en) allowed wsconfig.exe to run sucessfully and configure the web connection between IIS and CF.

A silent install of CF does not use/check for VC++; while a GUI install of CF objects that VC++ is missing.

5 replies

KennethaMackenzieAuthorCorrect answer
Participant
March 12, 2009
Installing Visual C++ 2005 x64 (available at http://www.microsoft.com/downloadS/details.aspx?FamilyID=eb4ebe2d-33c0-4a47-9dd4-b9a6d7bd44da&displaylang=en) allowed wsconfig.exe to run sucessfully and configure the web connection between IIS and CF.

A silent install of CF does not use/check for VC++; while a GUI install of CF objects that VC++ is missing.
Participant
February 26, 2009
Yes, I can install these components. I installed them using the command:

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ODBCLogging;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-ClientCertificateMappingAuthentication;IIS-IISCertificateMappingAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementScriptingTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-LegacyScripts;IIS-FTPPublishingService;IIS-FTPServer;WAS-WindowsActivationService;WAS-ProcessModel

This is a full install, compared to my selective install command:

start /w pkgmgr /iu:IIS-ApplicationDevelopment;IIS-ClientCertificateMappingAuthentication;IIS-CommonHttpFeatures;IIS-DefaultDocument;IIS-HealthAndDiagnostics;IIS-HttpCompressionStatic;IIS-HttpErrors;IIS-HttpLogging;IIS-HttpRedirect;IIS-HttpTracing;IIS-IIS6ManagementCompatibility;IIS-IISCertificateMappingAuthentication;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-LoggingLibraries;IIS-Metabase;IIS-Performance;IIS-RequestFiltering;IIS-RequestMonitor;IIS-Security;IIS-ServerSideIncludes;IIS-StaticContent;IIS-WebServer;IIS-WebServerManagementTools;IIS-WebServerRole;IIS-WMICompatibility;WAS-ProcessModel;WAS-WindowsActivationService

The IIS7 tool is very cool, it displays the install-status of each module and their components.

I have resigned myself to the fact that it cannot be done. I have also scheduled a phone call with Adobe support tonight, but I will not hold my breath. I do not think they have the luxury of a Windows 2008 Server to play with, let alone the Core version.

Ken, thank you for both the technical and moral support that you have given, it is appreciated.
Inspiring
February 26, 2009
Not real familiar with the Server Core.

Can you install IIS Metabase and IIS 6 configuration compatibility via command line?

http://technet.microsoft.com/en-us/library/cc749081.aspx

Package Path: IIS-WebServerRole\IIS-WebServerManagementTools\IIS-IIS6ManagementCompatibility\IIS-Metabase

Command-Line Name: IIS-Metabase

Notes:

UI Name: IIS Metabase and IIS 6 configuration compatibility

Description: Installs the IIS metabase and compatibility layer, which enables the metabase to interact with the IIS 7.0
configuration store.

http://blogs.techrepublic.com.com/datacenter/?p=294

--
Ken Ford
Adobe Community Expert - Dreamweaver/ColdFusion
Adobe Certified Expert - Dreamweaver CS3
Adobe Certified Expert - ColdFusion 8
Fordwebs, LLC
http://www.fordwebs.com
http://www.cfnoob.com

Participant
February 26, 2009
Many thanks to Ken Ford, who sent me a copy of his applicationHost.config file and I added the "isapiCgiRestrictions" and "Handlers" sections to out config file:

<add path="C:\ColdFusion8\runtime\lib\wsconfig\1\jrun_iis6_wildcard.dll" allowed="true" groupId="MACRSRV" description="Macromedia Server Extensions" />
<add path="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" allowed="true" groupId="MACRSRV" description="Macromedia Server Extensions" />


<add name="AboMapperCustom-54522" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\1\jrun_iis6_wildcard.dll" requireAccess="None" responseBufferLimit="0" />
<add name="AboMapperCustom-54523" path="*.jsp" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54524" path="*.jws" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54525" path="*.cfm" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54526" path="*.cfml" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54527" path="*.cfc" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54528" path="*.cfr" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54529" path="*.cfswf" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />
<add name="AboMapperCustom-54530" path="*.mxml" verb="*" modules="IsapiModule" scriptProcessor="C:\ColdFusion8\runtime\lib\wsconfig\jrun_iis6.dll" requireAccess="Script" responseBufferLimit="0" />

But still unable to see a simple cfm file in the IIS web root.

So, instead of being selective with the IIS Modules, I uninstalled IIS, then did a FULL install onto the server Core and let the installer decide which modules could not be installed.

Using the tool <a href=" http://blogs.ipona.com/james/archive/2008/02/20/Installing-IIS7-Optional-Features-on-Vista.aspx">IIS7</a>, I was able to see that the "IIS-LegacySnapIn" is one of the few not installed.

IIS-WebServerRole [INSTALLED]
IIS-WebServer [INSTALLED]
IIS-CommonHttpFeatures [INSTALLED]
IIS-StaticContent [INSTALLED]
IIS-DefaultDocument [INSTALLED]
IIS-DirectoryBrowsing [INSTALLED]
IIS-HttpErrors [INSTALLED]
IIS-HttpRedirect [INSTALLED]
IIS-ApplicationDevelopment [INSTALLED]
IIS-ASPNET
IIS-NetFxExtensibility
IIS-ASP [INSTALLED]
IIS-CGI [INSTALLED]
IIS-ISAPIExtensions [INSTALLED]
IIS-ISAPIFilter [INSTALLED]
IIS-ServerSideIncludes [INSTALLED]
IIS-HealthAndDiagnostics [INSTALLED]
IIS-HttpLogging [INSTALLED]
IIS-LoggingLibraries [INSTALLED]
IIS-RequestMonitor [INSTALLED]
IIS-HttpTracing [INSTALLED]
IIS-CustomLogging [INSTALLED]
IIS-ODBCLogging [INSTALLED]
IIS-Security [INSTALLED]
IIS-BasicAuthentication [INSTALLED]
IIS-WindowsAuthentication [INSTALLED]
IIS-DigestAuthentication [INSTALLED]
IIS-ClientCertificateMappingAuthentication [INSTALLED]
IIS-IISCertificateMappingAuthentication [INSTALLED]
IIS-URLAuthorization [INSTALLED]
IIS-RequestFiltering [INSTALLED]
IIS-IPSecurity [INSTALLED]
IIS-Performance [INSTALLED]
IIS-HttpCompressionStatic [INSTALLED]
IIS-HttpCompressionDynamic [INSTALLED]
IIS-WebServerManagementTools [INSTALLED]
IIS-ManagementConsole
IIS-ManagementScriptingTools [INSTALLED]
IIS-ManagementService
IIS-IIS6ManagementCompatibility [INSTALLED]
IIS-Metabase [INSTALLED]
IIS-WMICompatibility [INSTALLED]
IIS-LegacyScripts [INSTALLED]
IIS-LegacySnapIn
IIS-FTPPublishingService [INSTALLED]
IIS-FTPServer [INSTALLED]
IIS-FTPManagement
WAS-WindowsActivationService [INSTALLED]
WAS-ProcessModel [INSTALLED]
WAS-NetFxEnvironment
WAS-ConfigurationAPI [INSTALLED]

The "IIS-LegacySnapIn" is a component of the "IIS-IIS6ManagementCompatibility" Module, which is an essential module for running CF through IIS.

I re-installed CF8 (after an un-install and reboot), but was still unable to get CF and IIS connected.

To compare, I was able to installed IIS 7 from the command line, do a silent CF8 install and run "wsconfig" on a regular Server 2008 without any problems. The applicationHost.config file was practically identical to Ken Ford's.

From this, I conclude, that the current version of CF does not work on 2008 Server Core.
Inspiring
February 24, 2009
"KennethaMackenzie" <webforumsuser@macromedia.com> wrote in message news:gnvi2r$o27$1@forums.macromedia.com...
> We have CF 8.0.1 (x64) installed onto W2K8 Server Core and IIS 7 (x64). (See
> code section for IIS 7 install command and CF silent installer.properties.)
> Remember, 2008 Core does not have a GUI, it's all command line.
>
> We can view the default IIS page on port 80, and CF Admin on port 8500.
>
> When we run the web server configurator (wsconfig) it throws a Java error
> about "side-by-side configuration".
>
> Adobe support initially claimed the install was 32-bit until they walked us
> through 2 installs (one for standalone and the other for jrun), before they
> were convinced it was 64-bit.
>
> Adobe support is currently (I hope) investigating why wsconfig throws a Java
> error when trying to configure IIS 7 for a connection from CF 8.0.1. Adobe
> support suggested that we complete the configuration manually and pointed us to
> some documentation:
>
> 1) http://www.adobe.com/products/coldfusion/faq/
> 2) http://kb.adobe.com/selfservice/viewContent.do?externalId=kb402572
> 3)
> http://livedocs.adobe.com/coldfusion/7/htmldocs/wwhelp/wwhimpl/common/html/wwhel
> p.htm?context=ColdFusion_Documentation&file=00001755.htm
> 4) http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_19575&sliceId=2
> 5) http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_19575
> 6) http://www.communitymx.com/content/article.cfm?page=7&cid=224AA
>
> What we need to do to complete the config is:
> 1) Configure the IIS Web Service Extensions for CF (jrunwin32.dll and
> jrun_iis6_wildcard.dll)
> 2) Configure the File Mappings (*.cfm, *.cfc, etc,)
>
>
> Defining 'index.cfm' as a default document, at a global level is
> straightforward:
> appcmd.exe set config /section:defaultDocument /enabled:true
> /+files.[value='index.cfm']
>
> But the other 2 steps are more complex. Commands we are using are along the
> lines of:
> REM adds web service extension (first security, then isapi filter)
> appcmd.exe set config /section:system.webServer/security/isapiCgiRestriction
> /+"[path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\jrun_iis6.dll',allowed=
> 'True',groupId='Macromedia',description='Macromedia Server Extensions']"
> appcmd.exe set config /section:system.webServer/security/isapiCgiRestriction
> /+"[path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\1\jrun_iis6_wildcard.dl
> l',allowed='True',groupId='Macromedia',description='Macromedia Server
> Extensions']"
>
> appcmd.exe set config /section:system.webServer/isapiFilters
> /+"[name='Macromedia Server
> Extensions',path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\jrun_iis6.dll']
> "
> REM the following needs a unique name
> REM appcmd.exe set config /section:system.webServer/isapiFilters
> /+"[name='Macromedia Server
> Extensions',path='%systemdrive%\Coldfusion8\runtime\lib\wsconfig\1\jrun_iis6_wil
> dcard.dll']"
>
> REM add file mappings (needs a path to a dll, which one?)
> appcmd.exe set config /section:system.webServer/handlers
> /+[name='ISAPI-cfm',path='*.cfm',verb='*',modules='IsapiFilterModule',resourceTy
> pe='File',requireAccess='Execute']
>
> Any help with getting the IIS 7 configred for CF would be greatly appreciated.
>
> Kenneth
>
> IIS 7 Install:
> start /w pkgmgr
> /iu:IIS-ApplicationDevelopment;IIS-ClientCertificateMappingAuthentication;IIS-Co
> mmonHttpFeatures;IIS-DefaultDocument;IIS-HealthAndDiagnostics;IIS-HttpCompressio
> nStatic;IIS-HttpErrors;IIS-HttpLogging;IIS-HttpRedirect;IIS-HttpTracing;IIS-IIS6
> ManagementCompatibility;IIS-IISCertificateMappingAuthentication;IIS-ISAPIExtensi
> ons;IIS-ISAPIFilter;IIS-LoggingLibraries;IIS-Metabase;IIS-Performance;IIS-Reques
> tFiltering;IIS-RequestMonitor;IIS-Security;IIS-ServerSideIncludes;IIS-StaticCont
> ent;IIS-WebServer;IIS-WebServerManagementTools;IIS-WebServerRole;IIS-WMICompatib
> ility;WAS-ProcessModel;WAS-WindowsActivationService
>
> CF 8.0.1 Silent Install:
> INSTALLER_UI=SILENT
> SILENT_LICENSE_MODE=full
> SILENT_SERIAL_NUMBER=xxxx-xxxx-xxxx-xxxx-xxxx-xxxx
> SILENT_INSTALLER_TYPE=standalone
> SILENT_INSTALL_ODBC=false
> SILENT_INSTALL_VERITY=false
> SILENT_INSTALL_SAMPLES=false
> SILENT_INSTALL_JNBRIDGE=false
> SILENT_INSTALL_LDS=false
> SILENT_INSTALL_FOLDER=C:/coldfusion8
> SILENT_WEBROOT_FOLDER=C:/inetpub/wwwroot
> SILENT_ADMIN_PASSWORD=xxxxxxxx
> SILENT_ENABLE_RDS=false
> SILENT_RDS_PASSWORD=
>
> IIS_connector_x64.bat:
> wsconfig -server coldfusion -ws IIS -site 0 -coldfusion -cfwebroot -ws64
>
> WSConfig Error Message:
> C:\coldfusion8\bin\connectors>IIS_connector_x64
> WARNING! This will install the ColdFusion MX IIS Connector at the global
> level.
>
> Press Control+C to abort.
> Press any key to continue . . .
> Exception in thread "main" java.lang.UnsatisfiedLinkError:
> C:\coldfusion8\runtime\lib\wsconfig\jrunwin32.dll: The application has failed
> to start because its side-by-side configuration is incorrect. Please see the
> application event log for more detail
> at java.lang.ClassLoader$NativeLibrary.load(Native Method)
> at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
> at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1647)
> at java.lang.Runtime.load0(Runtime.java:770)
> at java.lang.System.load(System.java:1005)
> at jrunx.connectorinstaller.Win32Handler.<init> Win32Handler.java:47)
> at jrunx.connectorinstaller.IISWebSites.<clinit>(IISWebSites.java:300)
> at
> jrunx.connectorinstaller.WebServerInfo.setWebServerDirectory(WebServerInfo.java:
> 350)
> at jrunx.connectorinstaller.WebServerInfo.<init>
> WebServerInfo.java:112)
> at
> jrunx.connectorinstaller.ConnectorInstaller.parseArgs(ConnectorInstaller.java:17
> 2)
> at
> jrunx.connectorinstaller.ConnectorInstaller.<init>(ConnectorInstaller.java:56)
> at
> jrunx.connectorinstaller.ConnectorInstaller.mainConnectorInstaller.java:760)
>

Kenneth,

I can't tell you how to complete it, but I can send you a copy of my Vista 64-bit, IIS 7, applicationHost.config file for you to
compare.

If you would like it send me an email at newsgroups2 AT fordwebs DOT com

--
Ken Ford
Adobe Community Expert - Dreamweaver/ColdFusion
Adobe Certified Expert - Dreamweaver CS3
Adobe Certified Expert - ColdFusion 8
Fordwebs, LLC
http://www.fordwebs.com
http://www.cfnoob.com