in reply to Absolute Path errors

It is normal for apache not to follow absolute paths. Instead of trying to use symbolic links, configure virtual hosts and aliases.

-M

Free your mind

Replies are listed 'Best First'.
Re^2: Absolute Path errors
by shmem (Chancellor) on Apr 10, 2007 at 12:51 UTC
    It is normal for apache not to follow absolute paths.

    No, it's the other way round. It's normal for apache to resolve only absolute paths and not to follow symlinks, unless you explicitly tell it to do so via

    Options +FollowSymLinks

    update: as pointed out by naikonta in Re^3: Absolute Path errors, the default is Options All so I correct the abvove statement to "It's normal for any sensibly configured apache" ;)

    Thanks, naikonta, another point to be wary of.

    --shmem

    _($_=" "x(1<<5)."?\n".q·/)Oo.  G°\        /
                                  /\_¯/(q    /
    ----------------------------  \__(m.====·.(_("always off the crowd"))."·
    ");sub _{s./.($e="'Itrs `mnsgdq Gdbj O`qkdq")=~y/"-y/#-z/;$e.e && print}
      Although you are correct about how to switch on "follow" for symlinks, your "other way round" presents a false dichotomy. Turning symlinks on or off has no logical symbiosis with the distinction between relative and absolute paths, but creates four logical combinations rather than two. I am trying to say that Apache converts absolute pathnames into relative ones rather than following them literally, irrespective of whether they resolve into a symlink and get redirected after that.

      -M

      Free your mind

        Your statement is not an inverse of mine, but is incorrect for other reasons

        Assuming the wrong context, yes, my statement is incorrect. We have to distinguish at least three: request paths, file system paths (relative to ServerRoot, DocumentRoot or any path set with Alias), and paths in the config.

        Apache translates absolute paths to relative ones when looking at a HTTP request; it does not follow symlink unless told to do so when translating the HTTP Request objects path relative to it's surrounding context back into an absolute one on the file system level.

        Now, in the context of apache configuration, absolute paths are accepted. See the alias directive you mentioned:

        Alias /docs /usr/local/share/docs <Location /docs> ... </Location>

        But I guess we both mean (and know) the same and need not compete for the best formulation. Instead, let's help Nik. How could a virtual host setup help him? You are correct wrt Alias, that could help, but without further information from him, little can be said.

        cheers,

        --shmem

        _($_=" "x(1<<5)."?\n".q·/)Oo.  G°\        /
                                      /\_¯/(q    /
        ----------------------------  \__(m.====·.(_("always off the crowd"))."·
        ");sub _{s./.($e="'Itrs `mnsgdq Gdbj O`qkdq")=~y/"-y/#-z/;$e.e && print}