Это может быть смешным вопросом, но это беспокоило меня какое-то время. У меня есть почтовый форвардер, подключенный к PHP-скрипту, он получает отлично, однако у меня есть следующая ошибка, отправленная мне мгновенно:
A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address(es) failed: pipe to |/home/[webroot]/public_html/external/mobile/email.php generated by mobile@[mydomain] The following text was generated during the delivery attempt: X-Powered-By: PHP/5.2.13 Content-type: text/html
Как вы можете видеть, Exim считает, что ответ заголовка является ошибкой из сценария, который у меня есть. Сценарий может получать электронную почту отлично от php: // stdin, но Exim быстро отвечает с ошибкой.
Кроме того,
Поэтому мой вопрос: как мне избавиться от этих двух заголовков?
Спасибо, ~ Джонни
Редактировать, Источник:
#!/usr/bin/php <?php $fd = fopen("php://stdin", "r"); $email = ""; while (!feof($fd)) { $email .= fread($fd, 1024); } fclose($fd); $dat = fopen(dirname(__FILE__).'/test.txt', 'w'); fwrite($dat, $email); fclose($dat);
похоже, что вы используете php-cgi, в то время как вам нужен php-cli (просто «php»). Запустите php -v, чтобы убедиться. Если используется cgi, попробуйте параметр «-q».
Имел ту же проблему. Мои хосты сказали мне, что я могу использовать php-5.4-cli (обычно я использовал php-5.4).
Добавление -cli работало для меня.