Когда я имею к вещам от PHP, которые требуют полномочий пользователя root в системе, которая имеет mod_php, я обычно пишу маленький сценарий помощника, чтобы на самом деле сделать задачу. Затем я использую system()
или proc_open()
назвать сценарий через sudo. Необходимо будет настроить апачскую учетную запись пользователя, чтобы смочь запустить тот конкретный скрипт без пароля.
Если система имеет cli версию php, установленного затем, можно записать сценарий помощника в PHP, так как это кажется, что это знакомо Вам.
/etc/sudoers
похож на это:
Cmnd_Alias PHPHELPER=/path/helper-script
www-data ALL=NOPASSWD: PHPHELPER
Преимущество выполнения этого состоит в том, что можно записать очень трудный и определенный сценарий помощника, который только выполняет одну задачу, и можно добавить большую хорошую проверку ошибок для предотвращения вредности. Это минимизирует потенциал для системного компромисса.
ПОНЯТЫЙ ЭТО! По умолчанию Lighttpd на FreeBSD настроен как это:
fastcgi.server = ( ".php" =>
( "php-local" =>
(
"socket" => socket_dir + "/php-fastcgi-1.socket",
# "bin-path" => server_root + "/cgi-bin/php5",
"bin-path" => "/usr/local/bin/php-cgi",
"max-procs" => 1,
"broken-scriptfilename" => "enable",
)
),
Ключевое строка быть:
"max-procs" => 1,
При изменении его на, скажем, 50 это хорошо работает. Я предполагаю, что это должно разветвиться от другого процесса или чего-то для выполнения ВИХРЕВОГО запроса, и не можете, потому что макс.-procs установлен на 1 по умолчанию.
Измените его, перезапустите Lighttpd, прекрасные работы. Да!
Ваше собственное поле может правильно разрешить доменное имя, которое Вы используете? Если Вы запрашиваете файлы из www.domain.com, можете, Вы проверить с помощью ping-запросов 'www.domain.com' от себя - Делаете это разрешает корректный внешний IP, который получил бы, когда Вы проверяете с помощью ping-запросов 'www.domain.com' от внешнего соединения.
Я думаю:
1) Название машины искажается в Вашем/etc/hosts как 127.0.0.1, и Ваш веб-сервер не связывается с петлевым адресом
2) Что относительно подсистем балансировки нагрузки, Вы использующий любого, который мог бы вызвать проблемы маршрутизации при попытке направить к себе
Andrew