***SOLVED***
The fact is that mod_dav fails if the directory that you ask it to serve
contains the file that is identified as DirectoryIndex.
So in my original posting, DAV fails to serve the DocumentRoot (however
I try to get at it) BECAUSE it contains the file 'index.html'.
I got here because I realised that there was something specific about
the 'site' directory that caused mod_dav to choke, and I worked through
the variables.
My solution, which seems to work is:
<VirtualHost *:80>
ServerName www.my-exemple.co.uk
ServerAdmin [email protected]
DocumentRoot /nfs4xp/www/www.my-exemple.co.uk/site
ErrorLog /nfs4xp/www/www.my-exemple.co.uk/WEB-INF/logs/httpd/error.log
CustomLog
/nfs4xp/www/www.my-exemple.co.uk/WEB-INF/logs/httpd/access.log combined
DirectoryIndex index.html
Alias /update /nfs4xp/www/www.my-exemple.co.uk/site
<Directory /nfs4xp/www/www.my-exemple.co.uk/site>
Options Indexes
AllowOverride none
Require all granted
</Directory>
<Location /update>
Dav On
AuthType Basic
AuthName "Site Update"
AuthUserFile
/nfs4xp/www/www.my-exemple.co.uk/WEB-INF/dav/user.passwd
AuthBasicProvider file
DirectoryIndex neverused.neverused
<LimitExcept GET POST HEAD OPTIONS>
require valid-user
</LimitExcept>
</Location>
</VirtualHost>
The only difference is that I change the DirectoryIndex to something
that will never appear for the DAV enabled location.
This has got to be a BUG. I'll look into reporting it. At least it seems
easy enough to work around once you know.
(I hope that I'm not celebrating prematurely).
Regards,
David
On 04/06/2014 01:15, Srinivasa Rao Katta wrote:
> David,
>
> Thanks for the information.
>
> Please try as like as following in your apache conf and please restart
> httpd and please verify everything is ok or not.
>
>
> ------------------------------------------------------------------------------
> DirectoryIndex index.html
>
> DocumentRoot /www/www.my-example.co.uk/site
> Alias /update "/www/www.my-example.co.uk/site/dave"
>
> <Directory /www/www.my-example.co.uk/site>
> ----------------------------------------------------------------------------
>
> or
>
> ------------------------------------------------------------------------------
> DirectoryIndex index.html
>
> DocumentRoot /www/www.my-example.co.uk/site
> Alias /update "/www/www.my-example.co.uk/site/dave/"
>
> <Directory /www/www.my-example.co.uk/site>
> ----------------------------------------------------------------------------
>
> And please try following urls through browser;
>
> http://www.my-example.co.uk
>
> http://www.my-example.co.uk/update
>
> Please let me know,If You have any questions or concerns.
>
> Thanks,
> Srinivas
>
>
>
> Srinivasa Rao Katta(System Administrator),
> [email protected] <mailto:[email protected]>,
>
>
>
>
> ------------------------------------------------------------------------
> Date: Tue, 3 Jun 2014 21:38:41 +0100
> From: [email protected]
> To: [email protected]
> Subject: Re: [users] WebDAV for managing web site content HTTPD 2.4.x
> (9 actually)
>
> Srinivasa,
>
> I have tried what I think you are suggesting:
>
> ...
> DirectoryIndex index.html
>
> Alias /update /www/www.my-example.co.uk/site/dav
> Alias /update /www/www.my-example.co.uk/site
>
> <Directory /www/www.my-example.co.uk/site>
> ...
>
> Then I get the 405 error.
>
> There is a subdirectory of my 'site' DocumentRoot called 'dave'.
>
> If I have:
>
> ...
> DirectoryIndex index.html
>
> Alias /update /www/www.my-example.co.uk/site/dave
> Alias /update /www/www.my-example.co.uk/site
>
> <Directory /www/www.my-example.co.uk/site>
> ...
>
> Then the second 'Alias' line is ignored and DAV works, but serves up
> my 'dave' directory.
>
> Regards,
> David
>
> On 03/06/2014 12:57, Srinivasa Rao Katta wrote:
>
> David,
>
> Please try to add the line following line before Alias /update
> /www/www.my-example.co.uk/site in the config file.
>
> Thanks,
> Srinivas
>
> Alias /update /www/www.my-example.co.uk/site/dav
>
>
>
>
> Srinivasa Rao Katta(System Administrator),
> [email protected] <mailto:[email protected]>,
>
>
>
>
> > Date: Tue, 3 Jun 2014 06:50:23 +0100
> > From: [email protected] <mailto:[email protected]>
> > To: [email protected] <mailto:[email protected]>
> > Subject: [users] WebDAV for managing web site content HTTPD
> 2.4.x (9 actually)
> >
> > I used to use WebDAV for managing web site content with Apache httpd
> > 2.2.x, however I have so far been unable to move the old
> configurations
> > to 2.4.x and maintain this facility.
> >
> > Most of the on-line 'howtos' seem to be based on the assumption
> that the
> > web server is being used as a kind of remote filesystem, which
> is all
> > well and good, and very useful; but not what I'm doing.
> >
> > I have things fundamentally working, and I CAN make DAV work if
> I create
> > a directory under my DocumentRoot and use DAV to manage files
> within it.
> >
> >
> > <VirtualHost *:80>
> > ServerName www.my-example.co.uk <http://www.my-example.co.uk>
> > ServerAdmin [email protected] <mailto:[email protected]>
> > DocumentRoot /www/www.my-example.co.uk/site
> > ErrorLog /www/www.my-example.co.uk/WEB-INF/logs/http/error.log
> > CustomLog /www/www.my-example.co.uk/WEB-INF/logs/http/access.log
> > combined
> > DirectoryIndex index.html
> >
> > Alias /update /www/www.my-example.co.uk/site
> >
> > <Directory /www/www.my-example.co.uk/site>
> > AllowOverride all
> > Require all granted
> > </Directory>
> >
> > <Location /update>
> > Dav On
> > AuthType Basic
> > AuthName "Site Update"
> > AuthUserFile /www/www.my-example.co.uk/WEB-INF/dav/user.passwd
> > AuthBasicProvider file
> > <LimitExcept GET POST OPTIONS>
> > Require valid-user
> > </LimitExcept>
> > </Location>
> >
> > </VirtualHost>
> >
> > This is my configuration. For the web site there is a .../<some-url>
> > directory, and within this there is a WEB-INF directory for various
> > administration stuff, and a 'site' directory. Everything is
> owned by the
> > user and group under which httpd runs.
> >
> > DocumentRoot is set to the 'site' directory, so that the server
> serves
> > stuff from it as expected.
> >
> > If I create a subdirectory under 'site' and set the Alias target to
> > point to it, DAV works; proving that the fundamentals are OK.
> >
> > So for example:
> >
> > Alias /update /www/www.my-example.co.uk/site/dav
> >
> > Will allow me to access files in a subdirectory of the 'site'
> directory
> > called 'dav'. However as soon as I set Alias as in the configuration
> > file above, to point to the DocumentRoot, I get '405' errors and
> failure.
> >
> > This seems to be telling me that there is something about the access
> > permissions to the actual DocumentRoot directory, rather than a DAV
> > configuration problem, and I assume that somehow my
> configuration must
> > have conflics in this area, but I'm completely at a loss with
> respect to
> > what is going wrong.
> >
> > Regards,
> > David
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> <mailto:[email protected]>
> > For additional commands, e-mail: [email protected]
> <mailto:[email protected]>
> >
>
>