Вопрос

В настоящее время у меня есть следующее, и оно не работает.(обычно у меня есть основной текст и информация заголовка, но ничего не работает)

mail("idealvisions@live.com","Nieuw offerte aanvraag","test");

Мы сделаем это на моем сервере, потому что я использую PHP 5 или выше, никаких проблем.Но страница контактов принадлежит клиенту, на котором работает php. 4.4 Я считаю.Теперь клиент действительно подталкивает меня исправить это, но, похоже, это не исправляется.Я попробовал все

В чем здесь проблема?это версия PHP?

Я также проверил с помощью phpinfo и получил это

sendmail_from   no value    no value

sendmail_path   /usr/local/bin/bgc_webhosting_mailer.sh /usr/local/bin/bgc_webhosting_mailer.sh
Это было полезно?

Решение

Похоже, что на сервере клиента неправильно настроен обработчик отправки почты.

Другие советы

некоторые интернет-провайдеры, предоставляющие хостинг, а некоторые бесплатные хостинговые платформы отключают функцию почты, можете ли вы попробовать что-то вроде этого:

error_reporting(E_ALL);
if (mail ('you@yourdomain.com', 'Test subject', 'Test Body')){
echo 'Mail sent';
}else{
echo 'Mail not sent';
}

если есть проблема с mail() на их сервере, вы можете рассмотреть возможность публикации сообщения в почтовой форме на одном из ваших серверов, а затем после этого вернуть его обратно на страницу благодарности на сервере клиента.

Судя по пути sendmail, ваш хост использует специальную программу/сценарий оболочки sendmail.

Поскольку параметр sendmail from не установлен, вам необходимо установить его в функции mail(), если только он не прописан жестко в коде. /usr/local/bin/bgc_webhosting_mailer.sh в этом случае вам следует обратиться к хостингу.

Пример настройки отправителя:

mail('recepient@example.com', 'Test subject', 'Test Body', "from:sender@example.com\n");

Если функция mail() действительно НЕТ доступен, а затем спросите у своего хостинга об альтернативе, например, о локальном SMTP-сервере.

Затем вы можете использовать локальный SMTP-сервер для отправки электронной почты.Вероятно, самый простой способ сделать это — загрузить библиотеку электронной почты, поддерживающую отправку через SMTP, например, PEAR Mail или SwiftMailer.

Груша: http://pear.php.net/package/MailБыстрый: http://swiftmailer.org/

Если ваш хост не предоставляет SMTP-сервер, вам, вероятно, следует поискать другой хост.Однако вы всегда можете использовать бесплатную службу электронной почты, например Gmail или Yahoo, и отправлять почту через их SMTP.

Также проверьте SeLinux, он может запретить любому потоку, созданному Apache, отправлять почту.В этом случае вы не получите ни ошибок, ни почты.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top