Я использую каталог Alias для использования системы управления контентом для нескольких веб-сайтов. Это похоже на пул приложений в IIS (для ребята Windows здесь).Вопросы разрешения общего применения (Alias)
Хотя у каждого сайта есть собственный пользователь (я использую VDS с DirectAdmin), а у CMS также есть собственный пользователь, теперь у меня есть проблемы с правами, потому что пользователю CMS нужны разрешения на чтение на каждом сайте (= homedir).
Как это сделать?
Моя ситуация:
/home/myapp/cms with user 'myapp'
< - прилагается к каждому веб-сайт с помощью директивы Псевдонима
/home/site1/public_html with user 'site1'
/home/site2/public_html with user 'site2'
Я попытался chmod o+rX /home/myapp/cms
, но это не сделать трюк. Также chown не является решением, поскольку он может обрабатывать только одного пользователя.
Update: Чтобы проиллюстрировать это лучше, мой сайт показывает следующее сообщение об ошибке:
Warning: require(/home/site1/public_html/includes/config.php) [function.require]: failed to open stream: Permission denied in /home/myapp/cms/index.php on line 2
Что означает «общее заявление» не имеют достаточного права.
В этом случае я также сделал
chmod o+rwX /home/site1/public_html/includes/config.php
Конечно «MYAPP» и «site1» отличается в реальном случае. Это просто упрощение.
Спасибо, что ответили, но это не сработало. PHP отображает следующую ошибку: «Предупреждение: require (/home/site1/public_html/includes/config.php) [function.require]: не удалось открыть поток: разрешение отклонено в /home/myapp/cms/index.php в строке 2'. Что означает, что «совместное приложение» не имеет достаточного права. Я также сделал «chmod o + rwX/home/site1/public_html/includes/config.php' .. –
Посмотрите, что пытается сделать строка2 index.php – tumbleweed
Мое общее приложение просто требует (в том числе) файла конфигурации с сайта (читать). Но у него нет необходимых прав. Я думаю, это связано с тем, что владелец файла отличается, но это должно быть так (для FTP/DirectAdmin/etc). –