Предоставление PHP разрешения выполнить мерзавца вытягивает запрос

Это немного грязно, но я также думал о разделении правил через папки, т.е. наличие 40-50 правил для моего Ящика входящих сообщений и заключительного правила работать переместило бы все оставленное в Ящик входящих сообщений в папку, Inbox2. У меня могут затем быть еще 40 + правила об этой папке прежде, чем переместить все в Inbox3 и так далее...

3
задан 27 March 2010 в 11:55
3 ответа

Как часто необходимо сделать получение по запросу? Можно сделать cronjob (каждые 30 минут или так) для пользователя мерзавца, который проверяет определенный файл. Если тот файл имеет 1 или в нем, он делает получение по запросу. Можно дать пользователю мерзавца и доступу www-пользователя-данных к этому файлу. PHP пишет 1 в файл-> cronjob (crontab запись пользователя мерзавца) проверки, если 1 находится в файле-> cronjob, очищает 1->, мерзавец делает получение по запросу-> и так далее Это - безопасный путь с небольшой задержкой (цикл cronjob). PS: не делайте забыл очищать 1.

1
ответ дан 3 December 2019 в 06:50
  • 1
    Спасибо за ответ. I' m просто работающий над ним и пришел к тому же решению. Рычаг-> назовите .php-> создает->/var/www/hooks/repo-name файл-> cronjob-> назовите сценарий удара-> сценарий удара проверяет/var/www/hooks/-> если файл нашел, что имя использования вытянуло repo. Было важно сделать это очень быстро после того, как рычаги входят, но максимум задержка одной минуты должна работать. И это решение должно быть более безопасным, чем какие-либо эксперименты www-data/php/ssh.Спасибо. –   27 March 2010 в 16:27
  • 2
    Еще больше быстрее путем является сценарий с бесконечным циклом (сон в течение одной секунды). могла бы быть задача потребления ресурса. –  DrDol 27 March 2010 в 18:25

Если бы это был я, я бы сделал примерно то же самое, но я бы запустил задание cron как root или другое использование в системе, имеющей доступ к оболочке. Я думаю, что основная причина того, что www-data ничего не может сделать, - это отсутствие доступа к оболочке. Точно так же, как DrDol сказал время от времени запускать задание cron, которое заставит git pull не стесняться перезаписывать ваше последнее нажатие новым, если вы получаете ошибки, потому что ur делает запрос страницы в середине pull, он может затем Лучше всего, чтобы каждое извлечение входило в папку, а затем эту папку переименовывали в папку, с которой работают www-data, сразу после того, как эта папка переименовывается во что-то еще, а затем удаляется после переименования нового рабочего каталога.

1
ответ дан 3 December 2019 в 06:50

Я бы посоветовал вам предоставить пользователю www-data его собственную копию репозитория git и собственный ключ SSH. Затем вы можете использовать Gitolite (или аналогичный), чтобы убедиться, что он имеет доступ только для чтения к репо. Предоставление доступа к www-данным вашему основному репо - не лучшая идея.

1
ответ дан 3 December 2019 в 06:50

Теги

Похожие вопросы