ColdFusion FAQs

From Hostek.com Wiki
Jump to: navigation, search

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 ColdFusion Builder / RDS

You may use ColdFusion Builder to transfer files to your site via FTP as mentioned in the ColdFusion Builder wiki.

However, because RDS is disabled on our shared servers as mentioned above, you may not use ColdFusion's Remote Development Services with our shared servers. Instead, please either use the ColdFusion server shipped with ColdFusion Builder, a separate local ColdFusion installation, or one of our VPS/Dedicated servers to take advantage of advanced development features within ColdFusion Builder.

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 CFSchedule for Scheduled Tasks in 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?

No, this tag is not supported. Instead you may use the built-in cfimage tag, cfx_openimage, or Efflaire's cfx_imagecr3.

How do I use the CFX_ImageCR3 tag?

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

The full tag documentation is here: https://web.archive.org/web/20150501054920/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/features restricted? What tags/features are allowed?

Most tags and functions are allowed, however 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, including CreateObject(). The only restriction on CreateObject is that it may not be used with Internal ColdFusion Java Objects as mentioned above. 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.

May I Access the ColdFusion Administrator on my Shared Server

No; we do not allow access to the ColdFusion Administrator on our shared servers. Our control panel allows our customers to add and edit DSNs, and the Windows Control Panel also allows you to view ColdFusion error logs.

With our Shared Railo plans, though, each account has access to their site's Railo Web Administrator through the link in their Control Panel.

Do You Support .java or .jar files?

No, we do not support .java or .jar files. The exception is with ColdFusion 10+ you may add .jar files to your application as shown here: Loading Custom Java Libraries in ColdFusion 10

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?

We do not allow this tag on our shared servers anymore because it is incompatible with 64-bit ColdFusion installations.

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?

This can be accomplished through the code shown in this wiki: Per-application Robust Exception Information Settings

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

If you wish to control ColdFusion JSON Prefix settings for your site, you can follow the guide here: Per-Application ColdFusion JSON Prefix

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.

How do I disable / enable Sandbox Security on my ColdFusion VPS?

Sandbox Security is great for development or multi-site servers, but it causes ColdFusion requests to run a bit slower than they normally would. If you’re not actively using this security feature, you can disable it within the Security > Sandbox Security page within your server’s ColdFusion Administrator.

Important: You must restart ColdFusion after disabling or enabling Sandbox Security for it to take effect.

Cfadminsettings2.jpg

Reference: Adobe - Using Sandbox Security

Using ColdFusion Builder to Syncronize Files via FTP

Creating the FTP connection

Open ColdFusion Builder

  1. From the left lower panel right-click on the world icon labeled FTP
  2. Select Add New FTP Site
  3. Enter the Server, Username, and Password, click Test to confirm settings are correct
  4. Enter the Remote Path, this can either be the root / or the webroot (either /wwwroot for Windows servers or /public_html for Linux servers)
  5. Click OK

To configure a project to Synchronize

  1. Right click on any project you wish to synchronize with over FTP. Hover over Synchronize and select Create New Synchronize Connection
  2. Make sure the path for the local project files is correct. For Remote select the newly created FTP Connection.
  3. Click OK

To Synchronize Files: Remote-to-Local or Local-to-Remote

  1. Right click on any project you wish to synchronize with over FTP.
  2. Hover over Synchronize and select Synchronize and follow the prompts to confirm which files should be synchronized.

Notes About Using Advanced ColdFusion Builder Development Features

In order to use advanced development features within ColdFusion Builder, it should be used with a ColdFusion server that has RDS (Remote Development Services) enabled. Our shared servers do not have this feature enabled because it poses a security risk within production servers. As such, it is recommended to either install a local copy of ColdFusion or use one of our ColdFusion VPS plans for your development. If you install a local development ColdFusion installation, be sure to enable RDS during the install process. If you're using a ColdFusion VPS, you can enable RDS within the Security > RDS section of your ColdFusion Administrator.

Once you have RDP enabled on a local development installation of ColdFusion or your own VPS, you can enable RDS support within ColdFusion Builder as shown here: ColdFusion Builder RDS Support

Note: If you wish to have your local development ColdFusion server match our shared server settings, read the above entry for Settings you should enable within your local ColdFusion Administrator.