Difference between revisions of "ColdFusion FAQs"

From Hostek.com Wiki
Jump to: navigation, search
(Settings you should enable within your local ColdFusion Administrator)
(How do I enable / disable Robust Exception Information on my site?)
Line 132: Line 132:
 
However, if the site is on a server with Robust Exception Information enabled, and you wish to disable Robust Exception Information, add this to the site's Application.cfc:
 
However, if the site is on a server with Robust Exception Information enabled, and you wish to disable Robust Exception Information, add this to the site's Application.cfc:
 
<pre><cfset this.enablerobustexception = false /></pre>
 
<pre><cfset this.enablerobustexception = false /></pre>
 +
 +
==Is Coldfusion Request Debug Output Available?==
 +
On our shared servers this is not allowed, because this feature can have a negative performance impact for the entire server. This is only allowed in our VPS/Dedicated environment.
  
 
==How do I adjust the JSON Prefix for my site==
 
==How do I adjust the JSON Prefix for my site==

Revision as of 16:53, 9 January 2014

Contents

ColdFusion Frequently Asked Questions (FAQ)

Do you support cfform?

Yes, this is supported.

Do you support ColdFusion Report Builder

The ColdFusion Report Builder uses RDS for the Query Builder. We have RDS disabled for security purposes as recommended by Adobe / Macromedia.

We suggest downloading the developer edition of ColdFusion and Report builder, installing locally. Build the reports with the local development environment and upload the ColdFusion Report Files (CFR files) to our servers. Specify the path to your pre-built report files from within the cfreport tag which is NOT disabled.

Do you support Custom Tags with your ColdFusion Hosting?

We do support custom tags, but not all .cfx custom tags, which may require additional server installs of .dll's, etc. If it is a commercially available tag, we'll consider installing it.

Standard .cfm custom tags, yes.

Custom Tag directories for your site can be created through the site's Application.cfc file as shown in the ColdFusion Tips & Tricks wiki.

Do you support the tags CFFILE, CFDIRECTORY and CFOBJECT?

Yes, these are supported.

Do you support Scheduled Tasks for Coldfusion?

Yes, ColdFusion Scheduled Tasks are supported.

To setup a schedule task in ColdFusion, you can use the CFSCHEDULE tag to create the scheduled task the first time. The ColdFusion Tips & Tricks wiki shows how to use the CFSCHEDULE tag.

Do you support the CFX_IMAGE tag?

Yes, the CFX_Image tag is supported on our 32-bit ColdFusion servers. Efflaire's cfx_imagecr3 is also installed, and it is available to both 32-bit and 64-bit servers.

How do I use the CFX_ImageCR3 tag?

This article from Efflaire shows examples of how to use the CFX_ImageCR3 custom tag: http://efflare.com/docs/CFX_ImageCR3/reference/examples/

The full tag documentation is here: http://efflare.com/docs/CFX_ImageCR3/

Do you support the CFX_Google API for ColdFusion?

Yes, we support CFX_Google on our ColdFusion servers.

Note: This tag was written for Google's deprecated version 2 API. If you do not have a version 2 API key you can still obtain a console key that works with version 2. Information on getting a Console Key can be found here: Google: Obtaining an API Key

Do you support the CFCONTENT tag?

Yes, we support CFCONTENT.

Do you support CF Shopkart?

Yes, we support CF Shopkart on our coldfusion servers.

Do you support Flash Remoting?

Yes, this is automatically enabled for all sites on our ColdFusion servers.

Please use http://domainname.com/flex2gateway/ or http://domainname.com/flashservices/gateway/ as the gateway URL for your application.
(replacing domainname.com with your actual domain)

Do your ColdFusion servers support Verity and SOLR?

Yes, both Verity (K2) and SOLR are supported on ColdFusion versions 7-9. Verity is not available in ColdFusion 10.

Are any ColdFusion tags restricted?

Currently, we disable the following ColdFusion features / tags on our shared hosting accounts:

  • Access To Internal ColdFusion Java Components*
  • Remote Development Services (RDS)
  • CFExecute
  • CFRegistry

All other tags are supported. If you are experiencing any difficulty with another ColdFusion tag or feature, please contact our customer support.


*Prevents CFML code from accessing and creating Java objects that are part of the internal ColdFusion implementation. This prevents a non-authenticated CFML template from reading or modifying administration and configuration information for this server. Adobe suggests these tags be disabled for production servers.

Do You Support .java or .jar files?

No, we do not support .java or .jar files.

Can I use CFExecute?

No, that tag is disabled.

Is the CFMAIL tag enabled?

Yes, the CFMAIL tag is enabled on all of our ColdFusion servers. See the cfmail wiki for details on how to use it in our environment.

Is CFX_JpegResize allowed on your ColdFusion servers?

Yes, this is installed and allowed on our 32-bit ColdFusion servers.

Will you deploy my (CAR) file from the Coldfusion Administrator?

We will not deploy it that way, as that is a default method that wouldn't benefit you on our shared servers. Instead, please deploy your application through FTP and create the datasource (DSN) through your control panel at wcp.hostek.com. Please see the WCP DataSources wiki for instructions on how to create a datasource.

Note: If you have a VPS or Dedicated server at Hostek.com, you can deploy your application how you wish. Please see our VPS Plans page for more info on our VPS options, and our Virtual Dedicated Plans page for details on our virtual dedicated servers.

Can I use J2EE Session Variables?

Yes, we are now supporting J2EE Session Variables.

With ColdFusion, how can I see the real error, while the visitor sees a page without the error?

In this example error template, be sure to replace 123.123.123.123 with your IP. You can get your IP using our IP lookup tool.


<cfif aIP is "123.123.123.123">

<cfoutput>
<br>
<strong>#error.Diagnostics#</strong>
<br>
<br>
#TimeFormat(error.DateTime,"hh:mm tt")# - #DateFormat(error.DateTime,"MMMM
D, YYYY")#
<br>
<br>
#error.Browser#
<br><br> 
IP ADDRESS: 
#error.RemoteAddress#
<br><br> 
TEMPLATE: #error.Template#?#error.QueryString#
<br><br>
#error.ValidationHeader#
<br><br>
#error.InvalidFields#
<br><br>
#error.ValidationFooter#
</cfoutput>
<cfelse>
Enter any text or formatting here that you want to display to your visitor instead of 
them seeing the error.
</cfif>


How do I get Google Maps to work with CFMAP?

The common problem is placing your googlemapkey in your application.cfm file. Instead, place the googlemapkey in an application.cfc file. You can leave your application.cfm as it is, and just create an application.cfc if you don't have one, and take the googlemapkey out of your application.cfm file and place it in your application.cfc file.

For example, this would go in your application.cfc file:

<cfset this.googlemapkey="abc123...your google key here...789xyz">

Then in your cfm template where the cfmap is called, you would add code to it like:

<cfmap name="themap" centeraddress="Tulsa, OK" width="400" height="400" zoomlevel="9">

How do I enable the CFCHART tag?

This is already enabled on all new accounts, but if CFCHART does not work on your site please do the following:

  • Create a folder named CFIDE off of the root level.
  • Create a blank file (0 bytes) named GraphData.cfm
  • Create a directory called main off of CFIDE
  • Navigate to the new directory at CFIDE/main
  • Create a blank file (0 bytes) named ide.cfm

The CFCHART tag should now work.

How do I enable / disable Robust Exception Information on my site?

To enable Robust Exception Information on a ColdFusion site, you will need to add the following to the top of your Application.cfc file:

<cfset this.enablerobustexception = true />

However, if the site is on a server with Robust Exception Information enabled, and you wish to disable Robust Exception Information, add this to the site's Application.cfc:

<cfset this.enablerobustexception = false />

Is Coldfusion Request Debug Output Available?

On our shared servers this is not allowed, because this feature can have a negative performance impact for the entire server. This is only allowed in our VPS/Dedicated environment.

How do I adjust the JSON Prefix for my site

By default our ColdFusion servers have the JSON prefix enabled for added security. If you wish to control how JSON is prefixed on your site, you can add the following to your Application.cfc file, and adjust the "secureJSONPrefix" as desired:

<cfset this.secureJSON = true>
<cfset this.secureJSONPrefix = "//">

Alternatively, you can disable this feature like so, but this is not recommended:

<cfset this.secureJSON = false>

What do I set as the "Destination" attribute for cffile?

For the "Destination" attribute, you should use the FULL path to the folder to which you wish the documents to be uploaded. You can make use of the expandpath function to obtain the full path dynamically.

How can I limit the tools available using the cftextarea FCKEditor toolbar?

There are two variations of the toolbar which can be specified in the <cftextarea> tag. If the toolbar attribute is un-specified, the toolbar set is "Default". If specified, you can use either "Default" or "Basic" this is case sensitive. See the tag options here for more information: cftextarea docs

The Using the rich text editor article from Adobe has more info on its usage.

How do I install Mura (previously known as Sava) CMS on your servers?

If your account uses our wcp.hostek.com control panel, you can install Mura through the Applications section of the control panel.

If your account is on Linux, or you prefer to perform a manual installation you can follow the steps below:

Requirements

  • Must have a Coldfusion or Railo hosting plan. Blue River (the makers of Mura) recommend the Silver plan.

Installation

  1. Put the contents of "mura[version]\www" directory into your webroot, (should be wwwroot on Windows and public_html on Linux). This includes the following directories and files: admin, config, default, fckeditor, requirements, tasks, Application.cfc, contentServer.cfm, index.cfm.
  2. Create a database (MySQL or MSSQL) using Helm either MS SQL or MySQL named "SomethingUnique_muraDB" and run then import/run the appropriate script (found in /db) against the database you created.
    For MySQL use PHPMyAdmin (Available in WCP and cPanel.)
    For MSSQL use Query Analyzer, SQL Management Studio or sqlcmd.
  3. Create a Datasource (DSN) for connecting to the database you created in the step above.
  4. Navigate to your domain name, and you should see the auto-installer form appear.
    Note: The email settings are not required to get mura up and running but you may get errors when running mura if they are not set. These, of course, pertain only to functionality that uses email.
  5. In your browser go to http://[domain]/admin/ and login.
    - Username: admin
    - Password: admin
  6. You're done installing mura. Enjoy!

Troubleshooting

If you receive the message "Application Starting. This site is currently loading.", mura needs to be reloaded by appending "?appreload&override" to the url. For example:
http://[domain]/admin/index.cfm?appreload&override

If you have any questions regarding installation, please visit our Support Forum at the Mura Forum.

Mura can be downloaded at: getmura.com

How can I disable ScriptProtect?

ColdFusion versions MX7 and higher support a feature called ScriptProtect which helps prevent XSS (cross site scripting) attacks. This feature is helpful as it strips certain HTML entities from user input, but it can also affect your Web app's functionality. A common example of this is "<embed>" tags being removed when a user tries to post a YouTube video to their blog.

This feature is enabled on our servers, but its value can be modified in your "Application.cfc" or "Application.cfm" file.

If Using Application.cfm

Add the following attribute to your <cfapplication> tag:

scriptProtect = "none"

If Using Application.cfc

Place the following code within the <cfcomponent> section of your Application.cfc

If using tag-based Application.cfc

<cfset this.scriptProtect = "false">

If using <cfscript> Application.cfc

this.scriptProtect = "false"

Settings you should enable within your local ColdFusion Administrator

When developing on a local ColdFusion server, most developers accept the default Coldfusion Administrator settings that are set by the ColdFusion installer. This is fine for development servers, but it can cause some problems when moving a ColdFusion application into production in a shared hosting enviroment. To ensure your code runs well when you move it to our servers, we recommend you make the following adjustments within your local ColdFusion Administrator:

First, on the Settings page make sure you enable the setting that says: "Disable access to internal ColdFusion Java components" (pictured below)

Cfadminsettings1.jpg

Second, under the Security Tab click the Sandbox Security link then click the box to "Enable ColdFusion Security". (pictured below)

Cfadminsettings2.jpg

Once Sandbox Security is enabled, you'll need to create a sandbox for your local site. To do this, add the full path to your site below where it says "Add Security Sandbox", then click "Add". For example if you are using the default site location for IIS, you would use 'C:\inetpub\wwwroot' as shown below:

Cfadminsettings4.jpg

The last thing to do is add the correct paths and permissions. By default, ColdFusion will add the path to your site, but you'll also want to make sure the following paths/permissions are added too (permissions are listed in parentheses next to path):

   C:\ColdFusion10\cache\- (Read,Write,Delete)
   C:\WINDOWS\Fonts\- (Read)
   C:\ColdFusion10\cfusion\wwwroot\WEB-INF\cfclasses\- (Read,Write)
   C:\ColdFusion10\cfusion\wwwroot\WEB-INF\cftags\interface.cfc (Read)
   C:\ColdFusion10\cfusion\tmpCache (Read)
   C:\ColdFusion10\cfusion\tmpCache\- (Read,Write,Delete)
   C:\ColdFusion10\cfusion\runtime\servers\coldfusion\SERVER-INF\temp\wwwroot-tmp\- (Read,Write,Delete)
   C:\ColdFusion10\cfusion\runtime\servers\coldfusion\SERVER-INF\temp\wwwroot-tmp (Read)
   C:\ColdFusion10\cfusion\tmpCache\CFFileServlet\_cf_image\- (Read,Write,Delete)
   C:\Users\USERNAME\AppData\Local\Temp\- (Read,Write,Delete)*


Please note, this assumes you're using a recent version of Windows (Vista or newer), and that ColdFusion is installed to 'C:\ColdFusion10'. If on an earlier version of Windows, the only thing you'll do differently is replace 'C:\Users\USERNAME\AppData\Local\Temp\-'* above with this path: 'C:\DOCUME~1\USERNAME\LOCALS~1\Temp\-'*

  • Replace USERNAME with the actual name of your ColdFusion runtime user.