Настройка Apache для нескольких сайтов с общими файлами
У меня есть около 50 сайтов, которые используют одни и те же файлы, кроме CSS и изображений, в настоящее время я дублирую файлы каждый раз, когда создаю новый сайт и загружаю разные css и изображения.
Что я хочу сделать, так настроить каждый vhost, чтобы иметь то же самое DocumentRoot затем добавьте AliasMatch для папок css и images, например:
#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>
Псевдоним идеально подходит для файлов, сделанных на заказ, но общие файлы не могут быть доступны из-за разрешения ошибки:
[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
Это текущая настройка сервера, которая, как я думаю, может быть частью проблемы (предыдущий администратор сервера установил это):
- Apache (Apache / 2.2.14 (Unix)
- PHP 5.2.11
- стандарт CentOS 4.8 i686
- обработчик PHP 5-dso
- Apache suEXEC включен
Есть предложения?
3 ответа:
Оказывается, что по умолчанию папка public_html имеет разрешения 750, я изменил на 755 и обновил ограничения open_basedir, и все начало работать отлично.
Я просто должен убедиться, что у меня все еще есть a .htaccess для каждого сайта.