Трубопровод к программе shebang PHP в CPANEL и разрешения на запись - PullRequest
0 голосов
/ 12 февраля 2020

Я установил PHP программу, которая будет передаваться по очереди, когда электронное письмо попадает в очередь. Что-то, что я сделал в прошлом без проблем. Согласно CPANEL, программа и путь к ней должны быть 0700 или 0755, какое бы руководство вы ни прочитали, и теперь это должно быть сделано с фильтром электронной почты. Я использую 755, потому что это то, что я всегда делал. Я вставил некоторый фиктивный код, чтобы убедиться, что все работает.

#!/usr/bin/php 
<?php
/* Read the message from STDIN */
$fd = fopen("php://stdin", "r");
$email = ""; // This will be the variable holding the data.
while (!feof($fd)) {
$email .= fread($fd, 1024);
}
fclose($fd);
/* Saves the data into a file */
$fdw = fopen("dummy.txt", "w+");
fwrite($fdw, $email);
fclose($fdw);
/* Script End */
?>

при отправке электронного письма, которое должно запустить программу. Я ничего не получаю ... файл не записан, нет сообщений об ошибках, ничего. Если я использую браузер и запускаю программу. Он создает файл, но так как я использую stdin, он ничего не видит и ничего не пишет ... но я получаю пустой файл. Так почему я не могу писать, когда он попадает в почтовую очередь?

Я просто слишком стар для программирования? Сводит меня с ума, я делал это миллион раз, но теперь мне нужно go к доскам объявлений за помощью. 70 не просто ... просто подождите, пока вы не доберетесь :( Службы поддержки на серверных фермах знают меньше меня и даже не знают, что такое труба, так что радости нет.

...