• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Can multiple Virtual Directories be created in CF11?

Explorer ,
Dec 02, 2014 Dec 02, 2014

Copy link to clipboard

Copied

I am testing the standalone version of CF11 using the internal web server. 

Please help me understand some things.  Since we are not using an external webserver like IIS, and we have 4 different websites to configure, in order to not change all the webpage code to point to a different level in order to be found, do I have to do this with Virtual Directories [i.e. I have copied all CF9 code (4 different websites) and just added _CF11 to the end of the main website folder names, i.e. website1_CF11 and an aliases have been created for these websites, i.e. aliases=”/alias1=E:\website1_CF11, etc…”]?  Can multiple VD be created?  How are they defined?  One is defined in the server.xml file as

<Context
            path="/"
            docBase="C:\ColdFusion10\cfusion\wwwroot"
            WorkDir="C:\ColdFusion10\cfusion\runtime\conf\Catalina\localhost\tmp"
            aliases="/VD=C:\newwebroot\VD">
</Context>

How would I create more than one?  Is this what I need to do to accomplish my goal?

Right now aliases are not going to work, because that would be pointless and time consuming changing all the code just so it can find all the web pages so we can test functionality and fix the breaks.  For example, I currently need to change the code to the following:

<cf_location url=”#URLSessionFormat(‘/webpage/’)#” addtoken=”false”>

To

<cf_location url=”#URLSessionFormat(‘/alias1/webpage/’)#” addtoken=”false”>

We are eventually going to run the wsconfig executable to connect to IIS so we can fully migrate from CF9 to CF11.  What am I missing?  I can’t imagine that Adobe would not have the same functionality with their internal web server as one would have with an external web server. 

Thanks in advance!

Jennifer

Views

1.2K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Dec 04, 2014 Dec 04, 2014

Copy link to clipboard

Copied

Adobe is using Tomcat's built-in web server for it's built-in web server.  If you go to the Tomcat docs, you can probably find direction on how to do this.  However, I submit that it is not worth the effort involved.  Since you intent to hook up IIS at some point, you should seriously consider just doing that now instead of "hacking" together a solution that you'll throw away later anyway.

If you are developing on a Windows Vista (shudder) or later OS computer, then the IIS that is built in is almost identical to the one in the comparable Windows Server release and supports multiple websites.  Set up your development IIS structure to match production and you'll save yourself a lot of grief.

-Carl V.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 10, 2014 Dec 10, 2014

Copy link to clipboard

Copied

Carl Von Stetten, Unfortunately I am being forced to use the internal Tomcat web server because we don't have any extra server, virtual or otherwise, to play with, either on our end, or our customer's end.  I'm having to do this side-by-side on our development server.  So, I have no choice, but to get this working as it does in IIS, but on the internal Tomcat webserver. I am slowly discovering all the hardcoded cgi.server_name  check issues that now how localhost vs an actual server, and blank cgi.auth_user that is probably supposed to be provided by IIS.  I'll start searching in the Tomcat docs and hope they actually have some content and guidance instead of just vague fluff.  Thanks for your help and pointing me in the right direction.

/r

Jennifer

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Dec 10, 2014 Dec 10, 2014

Copy link to clipboard

Copied

jkcrosby,

What is the OS on your "development server"?

-Carl V.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 10, 2014 Dec 10, 2014

Copy link to clipboard

Copied

Carl Von Stetten

Our development server OS is 2008 r2..

I don't know much about Tomcat, but I am learning.   I found  help.hardhathosting. com/question.php/150  which references configuring Tomcat with multiple hosts.  I see it in my server.xml file where to do that, and assume my host name would be localhost:8500 for one website and localhost:8501 for another.  The Alias would be the same localhost:8500 for one and localhost:8501 for the other.  The Context part is almost the same as the portion that is normally referenced to change in server.xml for configuring ColdFusion to change the root directories.

<Host name="domain1.com" debug="0" appBase="webapps" unpackWARs="true">

<Alias>www.domain1.com</Alias>

<Logger className="org.apache.catalina.logger.FileLogger"

directory="logs" prefix="virtual_log1." suffix=".log" timestamp="true"/>

<Context path="" docBase="/var/tomcat4/webapps/domain1" debug="0" reloadable="true"/>

</Host>

<Host name="domain2.com" debug="0" appBase="webapps" unpackWARs="true">

<Alias>www.domain2.com</Alias>

<Logger className="org.apache.catalina.logger.FileLogger"

directory="logs" prefix="virtual_log2." suffix=".log" timestamp="true"/>

<Context path="" docBase="/var/tomcat4/webapps/domain2" debug="0" reloadable="true"/>

</Host>

What I don't know is if the second part regarding the Example "/etc/httpd/conf/mod_jk.conf" file can be used with ColdFusion. I have searched and can't find that file, which looks like is what would create the Virtual Hosts.  Httpd I get is something for Tomcat, but I'm guessing Tomcat external, vs internal with ColdFusion since I can't find it.

I'm tempted to just create it and put it in my conf folder.  Before I go breaking things, any ideas/advice/thoughts?

Thanks!

- Jennifer

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Dec 10, 2014 Dec 10, 2014

Copy link to clipboard

Copied

jkcrosby - if you are using Windows Server 2008R2 than you already have access to IIS 7.5 (or can easily add it to the server - it's free and part of the OS).  If you already have IIS in production on that server, than just add additional sites for your project(s).

-Carl V.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 11, 2014 Dec 11, 2014

Copy link to clipboard

Copied

Carl Von Stetten
So, you're saying that IIS can distinguish between CF9 and CF11 when a page is being requested.  My boss was thinking that only one instance of CF could be connected with IIS at a time.  That is why we haven't gone that route.  If they still won't let me, I just researched into creating Multi Server Instances, which may be what I have been trying to do, but it doesn't solve the blank userID because it can't get that info from IIS.  I'm currently trying to see how to get user group/info/password info from IIS so I can perhaps  manually put it into the tomcat-users.xml and see if that would help solve it until I can convince the powers that be otherwise.  Thanks!

-Jennifer

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Dec 11, 2014 Dec 11, 2014

Copy link to clipboard

Copied

As long as you don't connect either CF9 or CF11 to IIS (using the WSCONFIG or Web Server Configuration Tool) with the "All Sites" method, you can connect different versions of CF to individual web sites.  If you did previously connect CF9 using "All Sites", you would need to run WSCONFIG, remove the connector to IIS (backup any customizations you may have made to the JRUN connectors, if any) then rerun WSCONFIG and add connections to each individual web site that needs to run under CF9.  Then run the CF11 WSCONFIG and connect only the web sites you need to run under CF11.  Make sure you run the WSCONFIG tool using the "Run as Administrator" option.

-Carl V.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 19, 2014 Dec 19, 2014

Copy link to clipboard

Copied

Carl Von Stetten

Is there a sequence when installing/upgrading?  For example,

Step 1.  Keep CF9 services running

Step 2.  Keep CF9 connected to the websites with the wsconfig

Step 3.  Install CF11

Step 4.  Sign in to CF11 Administrator, migrates configurations, and CF11 connects to websites and IIS with wsconfig

Step 5.  Remove CF9 connections

Step 6.  Stop CF9 services

Step 7.  Uninstall CF9 software

I just haven't seen any documentation as to what to do with the previous version at what part of the upgrade installation.

Thanks!

Jennifer


Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Dec 19, 2014 Dec 19, 2014

Copy link to clipboard

Copied

I thought you were trying to run both CF9 and CF11 simultaneously.  Now you are trying to upgrade and remove CF9 instead?  If so, I'd remove the "and CF11 connects to websites and IIS with wsconfig" from step 4.  Move that to new Step 8.  Otherwise, you'll have both CF9 and CF11 connectors simultaneously, and fighting each other.

-Carl V.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 19, 2014 Dec 19, 2014

Copy link to clipboard

Copied

We were, but it was not working at all,even with IIS, so we're trying a straight upgrade now using IIS, to see if it will be any better. Not so much.  It is not even getting to the config/migration stage.  I've posted a question regarding it on the forum.  I'll see if waiting to use wsconfig until afterwards changes things.  Thanks!

To have them run simultaneously, what would you do differently with the installation sequence?

Thanks!

Jennifer

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Dec 19, 2014 Dec 19, 2014

Copy link to clipboard

Copied

Like I said before, remove the CF9 connectors.  Install CF11, but DON'T let the installer build IIS connectors at all - enable the built-in server.  Then once you verify CF11 is running, run the CF9 WSCONFIG (using the "Run as Administrator" option) and connect ONLY the sites you want to run on CF9.  Do the same with the CF11 WSCONFIG.

-Carl V.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 19, 2014 Dec 19, 2014

Copy link to clipboard

Copied

LATEST

I will try that again.  I'm pretty sure I did just that, several times, but I will do it again to double-check.  Thanks for your advice and patience.

-Jennifer

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Documentation