Это немного грязно, но я также думал о разделении правил через папки, т.е. наличие 40-50 правил для моего Ящика входящих сообщений и заключительного правила работать переместило бы все оставленное в Ящик входящих сообщений в папку, Inbox2. У меня могут затем быть еще 40 + правила об этой папке прежде, чем переместить все в Inbox3 и так далее...
Как часто необходимо сделать получение по запросу? Можно сделать cronjob (каждые 30 минут или так) для пользователя мерзавца, который проверяет определенный файл. Если тот файл имеет 1 или в нем, он делает получение по запросу. Можно дать пользователю мерзавца и доступу www-пользователя-данных к этому файлу. PHP пишет 1 в файл-> cronjob (crontab запись пользователя мерзавца) проверки, если 1 находится в файле-> cronjob, очищает 1->, мерзавец делает получение по запросу-> и так далее Это - безопасный путь с небольшой задержкой (цикл cronjob). PS: не делайте забыл очищать 1.
Если бы это был я, я бы сделал примерно то же самое, но я бы запустил задание cron как root или другое использование в системе, имеющей доступ к оболочке. Я думаю, что основная причина того, что www-data ничего не может сделать, - это отсутствие доступа к оболочке. Точно так же, как DrDol сказал время от времени запускать задание cron, которое заставит git pull не стесняться перезаписывать ваше последнее нажатие новым, если вы получаете ошибки, потому что ur делает запрос страницы в середине pull, он может затем Лучше всего, чтобы каждое извлечение входило в папку, а затем эту папку переименовывали в папку, с которой работают www-data, сразу после того, как эта папка переименовывается во что-то еще, а затем удаляется после переименования нового рабочего каталога.
Я бы посоветовал вам предоставить пользователю www-data его собственную копию репозитория git и собственный ключ SSH. Затем вы можете использовать Gitolite (или аналогичный), чтобы убедиться, что он имеет доступ только для чтения к репо. Предоставление доступа к www-данным вашему основному репо - не лучшая идея.