I have several virtual hosts set up an Apache 2.2.3 server. A few of the virtual sites are running software that I used to (when using previous Apache 2.x releases) install in a directory named "package-v2.0.1", "package-v2.0.2", etc. I would then define a symlink pointing to the subdirectory holding the "production" version of the software once it had been tested. Redefining the symlink was a
really easy means of reverting to an earlier version if any MFUs were found.
A quick-n-dirty picture of the directory structure is:
Code:
/var
+--web
+--httpd/public_html (directory)
+--vhosts
+--vhost-1.com
| +--public_html (directory)
+--vhost-2.com
+--package-v2.0.1 (directory)
+--package-v2.0.2 (directory)
+--public_html (symlink to v2.0.2)
Well that doesn't seem to work any more under Apache 2.2.3. I only seem to be able to find/display the files associated with a virtual web server if "public_html" is an actual directory.
Pointing a browser at the main server server (in "/var/web/httpd/public_html") or "vhost-1.com" works fine.
But... when I try to go to "vhost-2.com", I'm getting the default "Hey the Apache installation works!" web page under the main server's directory. It doesn't even place any nastygrams in the vhost-2 access and/or error logs. I DO get the message
Code:
Symbolic link not allowed or link target not accessible:
/var/web/vhosts/vhost-2/public_html
in the general error_log.
I've made changes to mod_userdir.conf and that hasn't panned out. (OK, that was a crap shoot, that one.) "apache2ctl -t" tells me that the syntax is OK. (Yah, great.)
Does anyone know which file I might be able to tweak to get Apache to recognize public_html as a symlink? (To get past that "Symbolic link not allowed" error.) Or is my old method of switching software versions via symlinks not allowed under the later Apache releases? (Security hole?)
TIA
--
rt