Just realised i posted this on stack overflow by mistake, so here it is in the correct place!
I have approx 50 sites that all use the exact same files other than CSS and IMAGES, i currently duplicate the files each time i create a new site and upload different css and images.
What I want do so set up each vhost to have the same DocumentRoot then add AliasMatch for the css and images folders e.g:
#Common Files VHOST
<VirtualHost xxx.xxx.xxx.xxx:80>
ServerName commonfiles.com
ServerAlias www.commonfiles.com
DocumentRoot /home/commonfiles/public_html
</VirtualHost>
#Sample vhost for 1 of the 50 sites.
<VirtualHost xxx.xxx.xxx.xxx:80>
ServerName mytest.com
ServerAlias www.mytest.com
DocumentRoot /home/commonfiles/public_html
......
AliasMatch /css/(.*) /home/ftpuser/public_html/mycss/$1
</VirtualHost>
The alias works perfectly for the bespoke files but the common files cant be accessed because of permission errors:
[Mon Nov 16 09:31:01 2009] [crit] [client xxx.xxx.xxx.xxx] (13)Permission denied: /home/commonfiles/public_html/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable
This is the current server setup which I think may be part of the problem (Previous Server Admin Set this up):
- Apache(Apache/2.2.14 (Unix)
- PHP 5.2.11
- CentOS 4.8 i686 standard
- PHP 5 Handler is dso
- Apache suEXEC is on
Any suggestions?
It appears that by default the the public_html folder has permissions of 750, I changed to 755 and updated the open_basedir restrictions and all started to work great.
I just have to make sure that I can still have a .htaccess per site.
You've got an issue with a htaccess file somewhere.
If all your configuration is inside /etc/apache2 you don't even need htaccess file support enabled and can get a small speedup by disabling it.
You could also use something like mod_vhost_alias to simplify your configuration.
http://httpd.apache.org/docs/2.0/mod/mod_vhost_alias.html