|
Posted by Jonathan N. Little on 09/26/06 15:59
Alan J. Flavell wrote:
> On Tue, 26 Sep 2006, Jonathan N. Little wrote:
>
>> Something the Windows user must always be aware if is that unlike
>> Windows most webservers are not on Windows platforms and filenames
>> and paths are case-sensitive. The domain name is only where you can
>> be lax because they are not case-sensitive.
>
> Well, yes, but I'd say that's putting the cart before the horse. URLs
> are by definition case-sensitive, and that's got nothing to do with
> the particular file system used on any specific server. It just so
> happens that when URLs are mapped to files on a Windows server, then
> typically two different URLs which differ only in their case are
> mapped to the same file i.e although the URLs are different, they
> access the same resource.
I would argue that you are incorrect. URLs are not *always*
case-sensitive and case-sensitivity *is* platform dependent. Domain
names are host names and are *not* case-sensitive yet a domain names can
be a valid URL so:
http://www.example.com
http://WWW.EXAMPLE.COM
http://wWw.eXaMpLe.cOm
are all valid and equivalent URLs regardless of the server platform
Where the trouble lies is with the path and file name part of the URL
and as the w3.org states: "URLs in general are case-sensitive (with the
exception of machine names)."
http://www.w3.org/TR/WD-html40-970708/htmlweb.html
I have yet to come across a IIS that won't parse:
http://www.example.com/somepath/somefile.ext
http://www.example.com/SOMEPATH/SOMEFILE.EXT
http://www.example.com/somepath/somefile.EXT
http://www.example.com/SOMEpath/somefile.ext
http://www.example.com/sOmEpAtH/sOmEfIlE.eXt
as equivalent so I would argue that case-sensitivity is server platform
dependent.
>
> It's not a good idea to rely on this - one should be consistent.
>
>> I recommend any Windows users that want to do any significant amount
>> of web site development to find an old computer and slap together a
>> LAMP server and do your development there rather than with local
>> files. Will save you much debug frustration....
>
> You make a good point. For most purposes, I'd recommend Windows users
> to install Win32 Apache locally, and use that for browsing their
> development site. There's far too many shortcomings involved in
> browsing files directly, without a server. But in regard to case
> sensitivity, it's going to have the same issues as we are discussing.
I have never installed Apache on Windows, but as with other platform
independent software like Perl, case does not matter on Windows but will
on *nixes. I would say building a Linux box would be preferable because
it would force you to be case-aware and your site would work regardless
of the public web server...barring server-side scripting of course if
your doing ASP!
--
Take care,
Jonathan
-------------------
LITTLE WORKS STUDIO
http://www.LittleWorksStudio.com
[Back to original message]
|