Использование & quot; tee… & quot; Так как sendmail_path в php приводит к появлению дополнительного файла при использовании параметра -f.

Я использую то, что я узнал в https://stackoverflow.com/a/3176517/ направить mail () — команды в PHP на моей локальной машине в файл. От php.ini:

sendmail_path ='tee /testmail/mail.txt'

Но когда я добавляю additional_parameter ([email protected]) он генерирует дополнительный файл с именем [email protected] с содержанием почты в текущей папке.

Полный пример:

$ cat | php -d sendmail_path='tee /testmail/mail.txt'
<?php
mail('[email protected]', 'subject', 'body', '', '[email protected]');
?>
To: [email protected]
Subject: subjectbody

Последние пять строк написаны /testmail/mail.txt а также и недавно созданный [email protected],

Кажется, что -fпараметр передается в tee-command. Есть ли способ предотвратить это?

(С помощью cat приводит к ошибке и PHP возвращает false.)

2

Решение

Вы можете игнорировать любые дополнительные аргументы, передаваемые из php, обернув вашу команду в скрипт оболочки:

pseudo_sendmail

#!/usr/bin/env bash
tee /testmail/mail.txt

Конфигурация PHP:

sendmail_path ='/path/to/pseudo_sendmail'
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]