У меня есть выделенный сервер, на котором запущен php с обработчиком dso, я включаю глобальный config.php из одной учетной записи во все другие учетные записи. Это отлично работает на apache при открытии сайтов через браузер.
Но у меня также есть несколько заданий cron, и при попытке включить файл config.php я получаю ошибку «Permissions denied».
Основной config.php находится в учетной записи user1, поэтому я попытался добавить user2 (который включает user1 config.php) в группу user1, но это не сработало, ошибка все еще сохраняется.
Как я могу исправить это, не изменяя все файлы, которые включают основной файл config.php?
ОБНОВИТЬ:
Я "исправил" это, добавив пользователя user2 в группу nobody. Кажется, все работает нормально, но может ли это вызвать другие проблемы?
Каждый веб-сервер использует Effective uid and gid
,
Определение:
Effective username and group name are defined in /etc/passwd and /etc/group
Например apache
на Debian distro
использует www-data group
и www-data user
. Вы должны установить для них свои веб-данные, например:
chown www-data.www-data YOURROOTDIR/ -R
Предложение :
Вы должны узнать, как настроить свой дистрибутив effective uid and gid
. Затем действуйте chown
.Поскольку каждый дистрибутив использует один effective uid and gid
.