Copy link to clipboard
Copied
I'm running Server 2016, and ColdFusion2016 update 5 (installed with the update 3 exe) and then have updated to 5. IIS has all of the required handlers from the Web Configuration tool. I have an application named EC_Prod set in IIS pointing to a directory outside of the n:/inetpub/wwwroot directory. It is inside n:/code/EC_Prod. The wwwroot index.html has a link pointing to this application at http://mypage/ec_prod/ and the homepage for the application loads; however, if I append index.cfm to the end it gives error 404.
I have request error tracing and it shows that it is requesting GET for jakarta/isapi_redirect.dll and that ASP_FILE_NOT_FOUND, ASP_COMPILE_FAILED, ASP_LOG_ERROR, and then a warning for MODULE_SET_RESPONSE_ERROR_STATUS.
I have googled everything I can, but have had 0 success with other people's fixes. Both CF2016/Server2016 are x64, the ASP.net framework that is in the ISAPI Filters is x64, and my tomcat filter is also x64.
I have the jakarta virtual directory created and pointing at the Coldfusion2016\config\wsconfig\1.
I have the application physical path for EC_Prod without the ending \ as I've also seen mentioned.
The application was created in CFMX7, and worked fine when I upgraded to CF9/Server2016. We are wanting to get CF2016 working.
Copy link to clipboard
Copied
Have you re run the Web Configuration Tool?
This catches people out when they set the server up, run the tool and then add a new site in IIS later on. This new site does not automatically get covered. You need to run the tool after you add each new site.
You can either run the tool and remove the existing connector and re add it a for all sites are just add a the new site specifically.
Copy link to clipboard
Copied
Yes. I've tried rerunning it multiple times. Tried selecting just the default website (only site I have) instead of the "All" option. Unfortunately it doesn't appear to help.
I have added a screenshot of the failed request log.
Copy link to clipboard
Copied
Make sure you have both a handler mapping for the appropriate file extensions, and an ISAPI mapping for tomcat, and make sure the numbers for each are the same! Sometimes, the wsconfig tool doesn't really get this right if your environment is complicated enough. You can manually edit the web.config and applicationHost.config files to repair this problem.
Copy link to clipboard
Copied
When you say numbers you mean the wsconfig\1\isapi_redirect.dll ? If so, that's the only one I have. I have tried going to:
mypage:8500/ec_prod/index.cfm and that produces a new error looking for files in my cfusion/wwwroot/ec_prod .. I'm assuming this is due to me adding the :8500. The issue with this is that I have:
<cfcomponent>
<cfset This.Name = ListGetAt(CGI.PATH_TRANSLATED, 3, "\") />
<cfset This.SessionManagement = True />
<cfset This.SessionTimeout = CreateTimeSpan(0,4,0,0) />
<cfset This.ApplicationTimeout= CreateTimeSpan(0,12,0,0) />
<cffunction name="onApplicationStart">
<cfset Application.BGColor = "FFFFFF" />
<cfset Application.StandardPath = "/#listGetAt(CGI.PATH_TRANSLATED,3,'\')#" />
<cfset Application.DataSource = "#listGetAt(CGI.PATH_TRANSLATED,3,'\')#" />
<cfset Application.MasterDataSource = "Master" />
<cfset Application.ProtocolType = "http://" />
<cfset Application.Images = "#Application.ProtocolType##cgi.server_name##Application.StandardPath#/Images" />
here are the system variables:
Application Variables:
applicationname=cfusion
backgroundimage=
bgcolor=FFFFFF
currentbackuppath=N:\db_backup\
datasource=cfusion
defaultofficeid=2
doclib_documents=N:\code\cfusion\DocLib_Documents
errortemplates=/errortemplates
filesubsystempath=N:\code\cfusion\DocLib_Documents
fusebox=Struct (38)
images=http://mypage/cfusion/Images
masterdatasource=Master
maxrows=10
objadmin=Struct (17)
objevent=Struct (3)
objmanageevidence=Struct (122)
protocoltype=http://
standardpath=/cfusion
windowtimeoutinterval=7140000
CGI Variables:
AUTH_PASSWORD=
AUTH_TYPE=
AUTH_USER=
CERT_COOKIE=
CERT_FLAGS=
CERT_ISSUER=
CERT_KEYSIZE=
CERT_SECRETKEYSIZE=
CERT_SERIALNUMBER=
CERT_SERVER_ISSUER=
CERT_SERVER_SUBJECT=
CERT_SUBJECT=
CF_TEMPLATE_PATH=N:\ColdFusion2016\cfusion\wwwroot\EC_Prod\index.cfm
CONTENT_LENGTH=
CONTENT_TYPE=
CONTEXT_PATH=
GATEWAY_INTERFACE=
HTTPS=off
HTTPS_KEYSIZE=
HTTPS_SECRETKEYSIZE=
HTTPS_SERVER_ISSUER=
HTTPS_SERVER_SUBJECT=
HTTP_ACCEPT=text/html, application/xhtml+xml, image/jxr, */*
HTTP_ACCEPT_ENCODING=gzip, deflate
HTTP_ACCEPT_LANGUAGE=en-US
HTTP_CONNECTION=Keep-Alive
HTTP_COOKIE=CFID=806; CFTOKEN=52762846; CFADMIN_LASTPAGE_CFADMIN=%2FCFIDE%2Fadministrator%2Fsettings%2Fmappings%2Ecfm; JSESSIONID=C813FFFA5A3D1C59F3C0929E9FD2AF38.cfusion
HTTP_HOST=cgrcfl-ecs:8500
HTTP_REFERER=
HTTP_URL=
HTTP_USER_AGENT=Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
LOCAL_ADDR=0:0:0:0:0:0:0:1
PATH_INFO=
PATH_TRANSLATED=N:\ColdFusion2016\cfusion\wwwroot\EC_Prod\index.cfm
QUERY_STRING=fuseAction=Private.Display&CFID=806&CFTOKEN=52762846
REMOTE_ADDR=0:0:0:0:0:0:0:1
REMOTE_HOST=0:0:0:0:0:0:0:1
REMOTE_USER=
REQUEST_METHOD=GET
SCRIPT_NAME=/ec_prod/index.cfm
SERVER_NAME=mypage
SERVER_PORT=8500
SERVER_PORT_SECURE=0
SERVER_PROTOCOL=HTTP/1.1
SERVER_SOFTWARE=
WEB_SERVER_API=
Copy link to clipboard
Copied
Also,
If I don't include the :8500 and just go to mypage/ec_prod/ it loads the correct cgi.path_translated as the n:\code\ec_prod ... and the index.cfm, as long as I don't have the index.cfm at the end of the URL. I'm not sure if I'm missing a mapping that is required, or not.