Could not instantiate mail function? :: DLE FAQ

Почему не получается отправить электронные письма во время рассылки на сайте Joomla? Откуда взялась ошибка “сould not instantiate mail function”

Почему не удалось вызвать функцию отправки на имейл в Joomla

Итак, попробуем определить причину появления навязчивого сообщения “сould not instantiate mail function” и почему не удалось вызвать функцию в разных ситуациях.

Первая причина, почему выскочила надпись “сould not instantiate mail function” при попытки отправить письмо на имейл – это ваш хостинг, а точнее ваш локальный сервер. Часто вебмастера перед тем, как что-то устанавливать на сайт или перед его публикацией, проводят эксперименты вдали от сети Интернет – у себя на компьютере на созданном виртуальном сервере. Если вы сейчас редактируете содержимое сайта именно при помощи локального сервера, то функцию не удалось вызвать по очень простой причине – у вас на компьютере нет куда отправлять имейл. То есть у вас нет сервера для отправки электронных писем. И неважно какой именно локальный хост вы используете, WAMP или Денвер – вы все равно не сможете отправлять с него электронные письма.

Порой надпись “сould not instantiate mail function” появляется, но не при каждом отправлении письма. К примеру, когда вы делаете рассылки своим подписчикам и из тысячи человек 20 не получают письма, так как не удалось вызвать эту функцию в Joomla. В таком случае объяснение простое – они ввели неправильный адрес электронной почты, когда подписывались на вашу рассылку. Решить такую проблему невозможно – придется удалить невнимательных подписчиков.

joomla-3.0-smtp-mail-settings

Иногда Joomla выдает надпись “сould not instantiate mail function” из-за того, что вы ввели в данных отправки какие-то специальные символы, которые сервер не воспринимает. Особенно часто эту случается в тех случаях, когда вы создаете скрипт рассылки и указываете в нем имя пользователя с какими-то особыми знаками. Если это так, то чтобы удалось вызвать функцию отправки электронного письма в Joomla, вам необходимо нажать пункт Yes возле графы Adds Names, чтобы сервис добавлял имена в письма и воспринимал специальные символы.

Еще одна причина, по которой вместо отчета об отправке сообщений вы увидите “сould not instantiate mail function” – это недействительный донорский адрес имейл. Дело в том, что даже если сообщения отправляет ваш сервер, они не придут получателю, если не будет указан отправитель. Возможно, вы указали неверный имейл отправителя, ведь эта почта должна быть зарегистрирована на вашем доменном имени.

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

Существуют и другие причины, из-за чего вылетает сообщение “сould not instantiate mail function” на сайте с движком Joomla. И вполне вероятно, что причины эти снова кроются в ограничениях вашего хостинга. Вам стоит заранее разведать допустимые параметры электронных сообщений для отправки, чтобы потом не возникало проблем. К примеру, некоторые хостинги априори отказывают отправлять сообщения, если в них закреплены какие-то файлы. Возможно, таким образом они пытаются избежать прецедентов спам-рассылок, а с другой стороны – не хотят отправлять слишком большие массивы информации, нагружая тем самым сервера. В любом случае вам нужно разведать обстановку в технической службе поддержки, а потом искать пути решения.

server-settings-image

И последняя причина, по которой надпись “сould not instantiate mail function” не дает вам отправить электронные письма – это ошибки в поле “Тема” при отправке. Вы должны знать, какие лимиты длины “Темы” установлены на сервере. Превышение лимита – это однозначный отказ к отправке. Да и не стоит делать рассылку с громоздкими заголовками – это не эффективно. С другой стороны, вы могли использовать в пункте “Тема” какие-то запрещенные символы. В любом случае вам поможет поддержка!

Похожие вопросы

Последние события

  • События
  • Заказы
  • Модули
  • Фото hackedshv

    hackedshv
    Как бороться с плохим качеством thumb и medium изображений?
    Сегодня, 11:02

    Да вроде пропорционально уменьшает.

  • Фото hbhjbmjhn

    hbhjbmjhn
    Куда попадает поле email при добавлении комментария?
    Сегодня, 10:46

    там маска стоит что @ обязательно при вводе ставить
    Суть в чем, мне нужно собирать имя и номер телефона, если я поле email переименую в телефон должно быть норм, но обязательный знак @не даёт ввести цифры

  • Фото hbhjbmjhn

    hbhjbmjhn
    Куда попадает поле email при добавлении комментария?
    Сегодня, 10:45

    Сразу начинаете) я доступ к прошлому акку забыл, а этот почему то тут есть) в друг девочкам чаще помогают, хотел протестировать

  • Фото леший

    леший
    Куда попадает поле email при добавлении комментария?
    Сегодня, 03:35

    Европейский или американский подход. Ведь гендер, он такой гендер… 😀

  • Фото леший

    леший
    Куда попадает поле email при добавлении комментария?
    Сегодня, 03:32

    Переписав вот эту часть кода

    $row[‘gast_name’] = stripslashes( $row[‘gast_name’] ); $row[‘gast_email’] = stripslashes( $row[‘gast_email’] ); $row[‘name’] = stripslashes( $row[‘name’] ); if( ! $row[‘is_register’] or $row[‘name’] == ” ) { if( $row[‘gast_email’] != “” ) { $tpl->set( ‘{author}’, “<a href=”mailto:”.htmlspecialchars($row[‘gast_email’], ENT_QUOTES, $config[‘charset’]).””>” . $row[‘gast_name’] . “</a>” ); } else { $tpl->set( ‘{author}’, $row[‘gast_name’] ); } $tpl->set( ‘{login}’, $row[‘gast_name’] ); $tpl->set( ‘[profile]’, “” ); $tpl->set( ‘[/profile]’, “” ); }в файле engine/classes/comments.class.php

  • Фото TeraMoune

    TeraMoune
    Как бороться с плохим качеством thumb и medium изображений?
    Сегодня, 01:42

    Может картинка растягивается, выше своего размера ? Не замечал такого никогда.

  • Фото Valeron

    Valeron
    Как организовать вывод одной новости с одинаковым названием и описанием но с разными параметрами?
    Вчера, 12:47

    Доброго времени суток, я убрал все одинаковые новости (товары) с категорий и с главной, запретил индексацию для поисковиков. Теперь они выводятся только в полной новости. Теперь осталось сделать переход с одной полной новости в другую полную новость при нажатии на цвет. Через дополнительное поле (чистый HTML или JS) я это организую, под каждый цвет подставлю ссылку. Но может кто подскажет как бы это сделать на аякс, с одной полной новости в другую полную новость без перезагрузки страницы.

  • Фото New-dev.ru

    New-dev.ru
    UserSubscribe – подписки на новости
    Вчера, 09:05

    Да, все формы подписки в tpl файлах

  • Фото dj-avtosh

    dj-avtosh
    Куда попадает поле email при добавлении комментария?
    26-02-2021, 12:34

    А почему Вы, Роман, пишите от лица женского пола? Ролевые игры?

  • Фото dj-avtosh

    dj-avtosh
    Быстрое копирование новости 0.0.1.2
    26-02-2021, 11:55

    У некоторых людей спин-текст юзается в описании и меняется у новостей лишь тайтл.

Checking Server Settings

Since mail functions are part of the PHP’s core, first of all make sure that PHP was configured/compiled correctly on your server to send emails. Run following test to check this:

Create a file called testing_mail.php in /public_html/ directory on your server. Add one of the following codes into this file:

<? $headers = ‘From:[email protected]’; mail(‘[email protected]’, ‘Test email using PHP’, ‘This is a test email message’, $headers, ‘[email protected]’);?> <?php $to = ‘[email protected]’; $subject = ‘Test email using PHP’; $message = ‘This is a test email message’; $headers = ‘From: [email protected]’ . rn . ‘Reply-To: [email protected]’ . rn . ‘X-Mailer: PHP/’ . phpversion(); mail($to, $subject, $message, $headers, ‘[email protected]’); ?>

Where

Make sure to replace those values by existing email addresses.

Run created file by opening www.yoursitename.com/testing_mail.php in any browser. You should see blank page.

In case if Oxwall itself is installed in /public_html/ directory, you will see “Page Not Found” message. This happens because Oxwall’s .htaccess is blocking this page. Add following line into Oxwall’s .htaccess right before “RewriteCond %{REQUEST_URI} !^/index.php” to solve this issue:

RewriteCond %{REQUEST_URI} !/testing_mail.php

Open www.yoursitename.com/testing_mail.php again. You should now see a blank page.Check the email you have set for “r[email protected]”.

If you don’t receive testing email, contact your hosting provider and check:

  1. whether phpmailer library is installed/enabled/configured on your server.

  2. whether php mail() function is installed/enabled/configured on your server.

If you receive testing email, php mail script is working on your server. In this case, “Could not instantiate mail function” is most likely to be caused by php mailer libraries used in Oxwall itself.

Рейтинг
( 1 оценка, среднее 5 из 5 )
Загрузка ...