Я использую веб-сервер Apache в человечности, Linux. Я пишу веб-приложение с помощью CGI. Существуют пути моих работ.
WWW Dir -> /var/myproj/www/
Data Dir -> /var/myproj/data/
App Dir -> /usr/lib/cgi-bin/
Proj Dir -> /home/$USER/myproj/www/
Иногда я буду копировать файл от Dir Данных до Dir WWW через мое приложение CGI. Я буду читать, записать и обновить данные, расположенные в Dir Данных из моего Приложения CGI. Мой запрос, я должен считать и записать файлы, расположенные в Dir Dir и Данных WWW только Приложением CGI. Даже любой локальный пользователь не должен читать и писать им файл, расположенный в каталогах Data и WWW.
Но я использую приложение пехотинца для обновления моего Каталога WWW из моего Каталога Proj. Только Мое приложение CGI и Приложение Пехотинца могут обновить Каталоги Данных и WWW.
Сделать это, Какое Владение и режим доступа я должен дать?
Используйте преданного пользователя и группу.
Вы можете заставить "данные" принадлежать "пользователю приложения CGI" и устанавливаете его на "700" для каталогов и "600" для файлов. Никто кроме администратора и того пользователя не сможет даже ввести каталог. И при этом они не могут считать файлы.
Для пехотинца: Вы могли добавить что пользователь к той же группе как Ваш "пользователь приложения CGI".
Поскольку запись в "www" каталог добавляет те 2 пользователей к группе, которая владеет "www".