|
|
|

The DAV Debacle
Background...
In this article, I will outline the background
to my problem, and then take you through the thought
processes that got an alternate Web server situation to
work for the University of North Texas.
We
are a large university with a student population of
29,000, and a staff population of 5 - 6,000. This rather
large university has many departments, and many different
needs that are being fulfilled by a large group of
technology people, of which I am one. I work in Central
Web Support, and we run the main Web servers for the
university, dynamic and static, as well as the streaming
media server and distance education servers. I am
personally responsible for the dynamic content Web
servers, and allow applications from all over campus to
be run on my boxes. They are win2000 service pack 2
boxes, and I have modified their Microsoft induced
configuration to allow remote administration through a
Cygwin ported Secure Shell running as a service on the
machine. They have win32/Apache
1.3.22/mod_dav/mod_perl/mod_ssl/mod_coldfusion with
FrontPage 2000 extensions running on them, with available
backends being MS Access and MS SQL Server 2000. These
Web servers are used by the campus for the publishing of
dynamic content, meaning that we must have multiple
options available for the Web designers to publish with.
This being the case, I had planned to move the current NT
4 service pack 6a, IIS4 box to the new machine, with DAV
enabled and with the FrontPage 2002 Server Extensions
installed on the win32/Apache Web server. As many of you
already know, the FrontPage 2002 Server Extensions will
not install on a box without IIS installed on the
machine. (This has been 2-3 months back, and I know that
some people have been working on this problem... Good
Luck!!) This ended up being the first of many
frustrations on the path to getting this server up and
production ready...
Let the
journey begin...
As I have
already mentioned, my first dead-end was the lack of
ability to run 2002 server extensions on my machines.
This being the case, I was able to fall back on the
tried-and-true art of installing FrontPage 2000 Server
Extensions on the win32/Apache Web server. I was able to
do this following the instructions found at http://zts.com/msfpse/msfpse4apache.htm.
If you follow this method to the tee, you will have your
server extensions installed in no time, and I know that
this method also works on win32/Apache 1.3.20 and 1.3.22.
(Thanks!! :) ) (NOTE: I didn't follow the instructions on
the password stuff, because we are using Mark Wilcox's
[former UNT Campus Web Administrator] Auth-Net-LDAP
module to authenticate users to a central LDAP server.
They should work though.) After accomplishing this, I set
up Auth-Net-LDAP, and was able to connect to my new Web
server via FrontPage... Yeah!!!
Next, I
needed to configure mod_dav to work on the server. This
was done, by downloading the source, and compiling it. I
then moved the dav.dll to the libexec folder, configured
the httpd.cnf file, and the #haccess.ctl files, and
voila! I was able to connect using Microsoft Web Folders,
and Cadaver, from Unix. Life was great!! I then sat on my
laurels for a while, dreading the mod_ssl install and
certificate creation and signing. When that time came, I
compiled mod_ssl and installed it into the server, and
created the certificate, adding a virtual server to take
connections at port 443. Now came the hard part... Of
course, I didn't know that at the time...
Publishing
Dynamic Web Content...
A strange error began to pop-up when my testing
buddies and I began to try to move ColdFusion files
around on the server, or moving g ColdFusion files to
and/or from the server using DAV clients on win32
platforms. We began receiving "Invalid HTTP
headers" errors, and "Unable to create
Semaphore" errors. This caused us great
consternation, as my servers are almost exclusively made
up of ColdFusion files. When we couldn't find any
information, we began to turn to every Web administrators
best friend, www.deja.com, which
turned up an interesting point about Microsoft Web
Folders ability to manipulate dynamic Web content using
DAV. This is that Web Folders asks for a Last Modified
Header from the ColdFusion files, which, on our server,
is not to be found. (You can find out more about this
error at:
http://www.Webdav.org/mod_dav/install.html#complex. NOTE: the quick fix does NOT work, as is noted
in the article.) Frustration number two... How are we
going to get DAV to work with the majority of the Web
content on our server? (NOTE: This problem does NOT
effect DAV clients on MAC, or Unix, OR other DAV clients
on win32 platforms, it only effects Microsoft Web
Folders, and other programs that use Web Folders, such as
Macromedia Dreamweaver.) Well, we already have one
option, FrontPage. FrontPage can manipulate all of the
files on the Web server with no problem, except when you
have to mod_rewrite a URL to a virtual host on the same
instance of win32/Apache. FrontPage server extensions
will not install to a virtual host on win32/Apache
because it is an unsupported configuration. (Duh!! But,
we got it to work this far... ;-( ) So what about
Dreamweaver? Well, not much is coming from Macromedia,
but enough postings to the newsgroups show that
Dreamweaver does not support SSL connections using DAV or
FTP, and unbeknownst to me at the time, Dreamweaver uses
Microsoft Web Folders to make DAV connections... The
cycle continues...
What
Now...?
What
now...? I almost through up my hands at this point. We
could use FrontPage to publish to the http Websites, but
what are we going to do for our poor majority of win32
users? I needed to find a good win32 client, that would
allow connections over SSL, and that wouldn't be too
difficult for the end-users to install on their
machines...
Enter
DAVExplorer!
Though
I had misgivings, I needed an alternative client for my
win32 platforms, so I started looking at the other
clients available at www.Webdav.org/projects. These include many Web servers, file systems,
and java clients based on DAV protocol, and allowed for
me to look for an open source answer to my problems. As I
have end-users that are more familiar with GUI
interfaces, I was looking for a GUI solution, and I found
DAVExplorer!
DAVExplorer
is a GUI java client that uses Java 2, and runs on almost
every platform. It allows us to connect to sites hosted
on both http and https, and is fairly easy to install.
DAVExplorer has given us a way out, and here is how to
install it on a win32 platform.
Download the Java 2 Runtime Environment
Double-click
the executable and install the JRE to the
folder of your choice, the default is
fine.
Download the Java Secure Socket
Extensionsi (if you want to connect to a secure
site)
Be
aware that you will have to register with
sun.com to download the JSSE.
You
will also need to agree to not export the
JSSE over the border.
Download
the zip file to the folder of your
choice.
Installation instructions for JSSE
Unzip the JSSE folder to the folder of your
choice
Open Windows Explorer, and navigate to
the folder that you unzipped the contents of the
JSSE zip file to.
Enter the folder jsse1.0.2->lib
and copy all of the files in the *.jar files in
the folder
They should
be: jcert.jar, jnet.jar, jsse.jar.
Paste
the .jar files into (this assumes default
location): C:\Program
Files\JavaSoft\JRE\1.2\lib\ext\
Open
C:\Program
Files\JavaSoft\JRE\1.2\lib\security\java.security
in wordpad.exe and paste the following line:
security.provider.2=com.sun.net.ssl.internal.ssl.Provider
under
the line:
secu
rity.provider.1=sun.security.provider.Sun
NOTE: This
should be sequential, so if you have a
security.provider.3 in your java.security file, then
paste the above line (security.provider.2=etc.) and
change the line to
security.provider.4=com.sun.net.ssl.internal.ssl.Provider.
Save
the file. (Make sure that wordpad.exe does not
append .txt to the file. To do this, surround the
name of the file, java.security, with quotes.
(ie. "java.security")
Installation
instructions for the DAVExplorer binary
Download
the DAVExplorer
binary for windows
Create
a folder at the location of your choice.
Unzip
the contents of the DAVExp-*.zip to that folder.
Open
the folder in Windows Explorer, and create
shortcuts of the DAVExplorer.bat and
DAVExplorerSSL.bat on your desktop.
These two
batch files are, in essence your executable files. The
DAVExplorer.bat works with http-hosted Web sites, and
DAVExplorerSSL.bat works with https-hosted Websites. If
you double-click on the shortcuts on your desktop, a DOS
box will open, and after a short period of time a GUI
will open that looks much like Windows Explorer. This
program is not a streamlined, all powerful program, but is
good tool for us to use to interact with our DAV-enabled
Web servers. You can GET/download files by clicking on
the file that you would like to download in the right
window, then clicking File->Get File. To
upload, highlight the desired destination in the right
window, and click File->Write File, and, most
importantly, you connect to the Web server by typing the
URL in the box found at the top center of the GUI, (ie
Web2.unt.edu/test).
For more information on usage of the product, you can hit
the online user's manual at http://www1.ics.uci.edu/~Webdav/um.html
or the main Website at http://www1.ics.uci.edu/~Webdav.
In
Conclusion
As
you can see, we have been busy, and we hope that this
finds you busy, as well... Busy using Web2.unt.edu for
all of your dynamic content needs. We have been working
hard to bring you a new and improved server, and though
it has been a bumpy road, it is worth the trip!
Take
care!
|