[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

apache-doc needs content negotiation !



I have the Debian apache-doc module installed (on my home machine, not
the one to which I've ssh'd to send this).  Very nicely, it has several
languages supported.  However, its web pages use links which presume
that the documentation is served from a server with content negotiation.
Lacking the trailing .en on the link means that a default-configured
apache deems the links broken.

It would be sensible for installation of the apache-doc module to modify
access.conf so that a relevant Directory directive turns on MultiViews.
This may, of course, depend on some config to say what suffixes map to
which languages (... ah, but srm.conf seems to provide sensible defaults
for that).

Arguably the easiest way to do this would be for the entire /doc/ tree,
rather than by adding a Directory directive specific to apache-doc,
since it already has a Directory directive by default (this is what I've
done locally, and it works `out of the box').  In this case, the change
would be in the generic apache access.conf, rather than in the install
script for apache-doc.

I also notice that apache's configs are inconsistent: <quote
src="srm.conf">

Alias /doc/ /usr/share/doc/
## The above line is for Debian Policy 3.0.1 (FHS), which specifies that /doc
## is /usr/share/doc.  Packages should symlink to share/doc. -- apacheconfig

</quote> but <quote src="access.conf">

# Debian Policy assumes /usr/doc is "/doc/", at least from the localhost.

</quote>, not that this is disastrous - /usr/doc/ is full of symlinks
which amount to
 ln -s ../share/doc/* .
(rather suggesting it would be better to delete /usr/doc and replace it
with a symlink doc -> share/doc; or, if /usr/doc is worth keeping for
the sake of non-share doc, replacing all those symlinks with
 ln -s ../share/doc .s
 ln -s .s/* .
to: save a few kilobytes of disk space and; make it easier to change if
the policy ever changes again).

I've duly adjusted the Directory clause following the access.conf
comment above so that it relates to /usr/share/doc/ (and includes
MultiViews, as noted above).

<aside> I discovered this while trying to make sense of LoadModule
directives with conflicting names, e.g. <quote src="httpd.conf">

LoadModule config_log_module /usr/lib/apache/1.3/mod_log_config.so
LoadModule config_log_module /usr/lib/apache/1.3/mod_log_config_ssl.so
...
LoadModule mime_module /usr/lib/apache/1.3/mod_mime.so
LoadModule mime_module /usr/lib/apache/1.3/mod_mime_ssl.so

</quote>, which have been inserted by assorted dpkg installation scripts
(I suspect my problem is that I've got both apache and apache-ssl
installed and they're fighting with one another in some way - my guess
is I should just uninstall apache, but the fact that the packages didn't
do so via a conflict resolution persuades me to give it some though).
These lead to `module ... is already loaded, skipping' warnings when I
start apache. </aside>

	Eddy.
--
<patch dir="/etc/apache/" cmd="diff -C 3">
*** access.conf	Sun Jun 16 14:42:59 2002
--- access.conf~	Wed Mar 27 21:13:54 2002
***************
*** 68,75 ****
  
  # Debian Policy assumes /usr/doc is "/doc/", at least from the localhost.
  
! <Directory /usr/share/doc>
! Options Indexes FollowSymLinks MultiViews
  AllowOverride None
  order deny,allow
  # deny from all
--- 68,75 ----
  
  # Debian Policy assumes /usr/doc is "/doc/", at least from the localhost.
  
! <Directory /usr/doc>
! Options Indexes FollowSymLinks
  AllowOverride None
  order deny,allow
  # deny from all
</patch>
(Oh drat - I should have modified the comment too.  Ah, WTF.)


-- 
To UNSUBSCRIBE, email to debian-apache-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: