I'm pretty sure the "/" mapping rule doesn't apply when using expand path.
As I said before, with this rule, if you have a mapping called "/" this
mapping will be used, if you do not, the relative root of your website will
be used instead.

Russ 

-----Original Message-----
From: Bobby Hartsfield [mailto:[EMAIL PROTECTED] 
Sent: 05 December 2006 16:11
To: CF-Talk
Subject: RE: path outside webroot

> Go to command prompt and type
> "CD ."
> And then
> "CD /"
> And you will se ethe difference

No you won't :-)

C:\WINDOWS>cd .
C:\WINDOWS>cd /
C:\WINDOWS>

I know what [.] [..] and [/] are as far as their meanings in a directory
structure go... which is why I didn't get that ExpandPath('.') gave me the
current directory path but ExpandPath('/') didn't give me the path of the
main webroot (relative to the site).

I saw the same thing in the docs Dave, but it still seems that it does
something other than it should or at least something other than what anyone
would want it to do even though it takes 1 option... a RELATIVE path, the
docs claim the slash is read from a mapping... but, if the path returned by
ExpandPath('/') was from a mapping, wouldn't a mapping for / need to exist?
It doesn't.

Also, if ExpandPath could read a directory from a mapping, why wouldn't
something like... ExpandPath('/acoderslife') return the correct path for the
mapping called '/acoderslife'.

I know you might not have all the answers to this, I'm more or less
thinking/talking out loud here...

Apparently someone commented on the same thing at the bottom of the livedocs
as well.

Here are some others I don't get...

GetDirectoryFromPath(".") and GetDirectoryFromPath("\") return \ no matter
where they are called from.

GetDirectoryFromPath(ExpandPath(".")) returns the parent directory of the
directory that the command was executed from.

GetDirectoryFromPath(ExpandPath("..")) returns TWO directories above the
calling dir

.....but as it is, apparently you will always need to know where you are
calling any of the above from to 'dynamically' get the root of the site or
you could create a template that contains:

<cfset request.rootpath = GetDirectoryFromPath(GetCurrentTemplatePath()) />

and ALWAYS put it in the root of a site then cfinclude it anytime you want
to know what the rootpath is.

I know it's all somewhat moot. I have no problem setting a global
configuration file and adjusting things between servers (which I don't
normally have to do) everything basically sets itself in my configs based on
the server but the actual directory paths are dependent on me keeping the
same directory structure like I mentioned in a previous email. If my config
file is not inside of a folder just off the root called '\include\', then
the config file would need to change so the 'root path' is set correctly.

But if ExpandPath('/') did what most people would expect it to do, that
directory structure would never matter again. 

Oh well I suppose :-)

...:.:.:.:.:.:.:.:.:.:.:.
Bobby Hartsfield
http://acoderslife.com

--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.15.6/568 - Release Date: 12/4/2006
3:20 PM
 





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Create robust enterprise, web RIAs.
Upgrade & integrate Adobe Coldfusion MX7 with Flex 2
http://ad.doubleclick.net/clk;56760587;14748456;a?http://www.adobe.com/products/coldfusion/flex2/?sdid=LVNU

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:262907
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

Reply via email to