Не работает отправка почты на хостинге
-
Здравствуйте! В контактной форме при попытке отправить сообщение появляется сообщение: 'Ошибка. Неправильный код". Пробовал несколько раз. Данные введены верно. В чем ошибка? Где можно посмотреть этот код с капчей? Либо просто убрать её? В админской части ничего не нашёл.
-
Вижу, что старый адрес не работает. Если устанавливаете заново, то никакие файлы заменять после установки не нужно. Нужно скачать последнюю версию здесь https://shopker.org/digital_goods/my_purchases и её устанавливать.
-
@Admin Здравствуйте! После замены файлов архива на хостинге на след. день сайт не открылся. Error 404 ```
Too few arguments to function App\Controller\DefaultController::__construct(), 0 passed in /home/host1811538/host1811538.hostland.pro/htdocs/var/cache/prod/Container6Y86eny/getDefaultController4Service.php on line 15 and exactly 1 expected - /src/App/Controller/DefaultController.php (46) После удаления папки prod
исчез слайдер на главной странице. -
Решение в архиве. Нужно распаковать архив и заменить файлы. Но от маил.ру в любом случае нужно отказаться, там постоянные проблемы.
-
С очисткой кэша я проверил, проблема есть. Пока используйте временное решение. о котором писал выше. Нормально решение будет через 1 - 2 дня.
-
Спасибо. С яндексом настроилось.
-
Похоже, у Вас был указан не верный пароль от почты.
Сейчас проверил с Вашим тестовым ящиком. В логе такое:
[2020-03-02 20:11:54] app.ERROR: Exception occurred while flushing email queue: Expected response code 250 but got code "550", with message "550 spam message rejected. Please visit http://help.mail.ru/notspam-support/id?c=V78iMeoa-RONpCCTEPfReH7Gg6Dpkt6- FZx8xNEoQwwGDSXLheFlOULv72AXf9KXYKKcj1vWS9Axxxxxxxxx~ or report details to abuse@corp.mail.ru. Error code: 3122BF5713F91AEA9320A48D78D1F710A083C67EBEDE92E9C47C9C150C4328D1CB250D063965E18560EFEF4297xxxxxx. ID: 0000002700007B503xxxxxx. " [] []
Нужно перейти по ссылке и заполнить форму, чтобы письмо в будущем не помечалось как спам. Почему сами не можете смотреть логи?
Поэтому использовать почту
Mail.ru
для сайта не рекомендуется. Лучше используйте Яндекс, с ним меньше всего проблем.Только будет ли это работать, если проблема в кэше?
Пока не знаю, у меня другие сайты работают. Проблема только при очистке кэша (ошибка), но, возможно, на работу это не влияет. Т.е. предположително ошибка сама исчезает после того как любая страница будет загружена после очистки.
-
Проверьте правильно ли указали пароль от почтового ящика в параметре "mailer_password". Я проверял на Вашем сайта свой ящик на
Mail.ru
.И как часто нужно удалять эту папку /cache/prod?
После редактирования конфигурационных файлов, шаблонов.
-
Сейчас пробую отправлять письмо из формы, но по прежнему, на мой ящик ничего не приходит - ни во входящие, ни в рассылки ни в спам.
"Очищать системный кэш только удалением папки /cache/prod. Из админки кэш не очищать!"
И как часто нужно удалять эту папку /cache/prod?
Надеюсь, у Вас все же найдётся решение. Или, может, стоит сейчас поискать какой-нибудь другой плагин для отправки писем по типу модалки или он-лайн чат прикручивать. Только будет ли это работать, если проблема в кэше?
-
Оказалось это давнишняя проблема с очисткой кэша:
https://github.com/symfony/symfony/issues/25654Её исправили, но видимо работает только, если очищать кэш из терминала. В ближайшее время дам решение.
Временное решение:
-
Редактировать настройки только в файле (не в админке)
/config/settings.yaml
. -
Очищать системный кэш только удалением папки
/cache/prod
. Из админки кэш не очищать! -
На Mail.ru письмо почему-то попадает не во "Входящие", а в раздел "Рассылки".
Если смотреть лог
/var/log/prod.log
, то там была ошибка:
-
-
Пользователь @Admin написал в Не работает отправка почты на хостинге:
/config/settings.yaml
Да, настройки сохраняются после изменений в админке
parameters: locale: ru app.locale_list: 'ru,en' app.name: Mетолего mongodb_server: 127.0.0.1 mongodb_port: '27017' mongodb_user: '' mongodb_password: '' mongodb_database: db1 mongodb_uri: null mailer_transport: smtp mailer_host: smtp.mail.ru mailer_port: '465' mailer_encryption: ssl mailer_auth_mode: login mailer_user: 1@mail.ru mailer_password: server111 app.display_errors: 1 app.catalog_page_size: '12,24,60' app.catalog_default_order_by: id_desc app.search_collections: products app.checkout_fields: 'options,email,fullName,phone,deliveryName,paymentName,comment' app.template_theme: default app.admin_email: 1@mail.ru app.payment_status_number: 1 app.payment_status_after_number: 2 app.order_status_canceled_number: 6 app.max_user_files_size: 10 app.max_temp_files_keep_minutes: 30 app.tax_system: usn_income app.nds_rate: vat20 app.payment_method: full_prepayment app.payment_object: commodity app.receipt_option_name: receipt app.shopping_cart_lifetime: 172800 app.shopping_cart_lifetime_favorites: 0 app.pay_after_checkout: 0 router.request_context.host: localhost router.request_context.scheme: http router.request_context.base_url: ''
По SSH сейчас нет возможности подключиться т.к. на сайте тестовый период.
Что происходит когда вызываете очистку кэша вручную? - кнопка в настройках "Очистить кэш" -> "Очистить системный кэш"
SyntaxError: Unexpected token < in JSON at position 16
Возможно, проблема с правами на запись в папке кэша, можно попробовать вручную удалить папку /var/cache/prod.
Сейчас папка переименована в prodd, но если в в админке пробовать очистить системный кеш, то ошибка в json снова вылетает.
Скинул Вам доступы здесь в чат.
-
Ещё возможный вариант: настройки в файл сохраняются, но не очищается кэш сайта. Что происходит когда вызываете очистку кэша вручную? - кнопка в настройках "Очистить кэш" -> "Очистить системный кэш". Возможно, проблема с правами на запись в папке кэша, можно попробовать вручную удалить папку
/var/cache/prod
. -
При сохранении настроек сообщается об ошибке в строках JSON
Настройки сохраняются? Вы можете это проверить, открыв файл
/config/settings.yaml
. Кстати, сюда можно скидывать не скриншот настроек, а содержимое этого файла, так удобнее.Если есть ошибка при сохранении, то смотрите логи ошибок на сервере или в файле
/var/log/prod.log
.Если есть возможность использования SSH, то можно перейти в корневую папку сайта и запустить команду:
php bin/console swiftmailer:email:send
Там будет диалог, где нужно ввести адрес отправителя, адрес получателя и т.д. После действий должна быть информация о проблеме.
Можете в ЛС мне скинуть доступы, я посмотрю.
-
"Ещё в адресе почты (параметр "Почта - Имя пользователя") какие-то пробелы в начале. В адресе почты администратора тоже пробелы нужно убрать" - нет, это не ошибка, я специально изменил адрес, чтобы не светить здесь.
Проблема так и не решилась. Я дал доступ тех.поддержке хостинга к админке и мне ответили:
Здравствуйте, попробовали отправку через наш сервер, для просмотра лога - не вышло. Форма отправки не сообщает об ошибке при этом на сервере не фиксируем даже попытки подключения на указанные порты. Предполагаем что проблема в CMS. При сохранении настроек сообщается об ошибке в строках JSON, проверьте на сколько это критично".К примеру, в админке, если менять данные email, то выпадает ошибка SyntaxError: Unexpected token < in JSON at position 1266
Вот настройки хостинга https://help.mail.ru/mail/mailer/popsmtp
-
У вас не указан хост SMTP сервера. 127.0.0.1 - это IP адрес локального сервера, что для
Mail.ru
не верно.
Ещё в адресе почты (параметр "Почта - Имя пользователя") какие-то пробелы в начале. В адресе почты администратора тоже пробелы нужно убрать.Все параметры SMTP нужно искать в справочной информации почтового сервиса. Для
Mail.ru
сервер:smtp.mail.ru
-
Вот сейчас сообщение, что письмо успешно отправлено, но реально на почту ничего не приходит. Может быть, ещё какие-то настройки нужны?
-
А как настроить SMTP в каком файле?
В разделе "Настройки" в админке.
Желательно ещё показать картинку до того как нажимаете кнопку, чтобы было видно, что код вводите верно.
-
Пользователь @Admin написал в Не работает капча на хостинге:
Покажите скриншот. Скорее всего не настроена отправка почты через SMTP и после того как вводите капчу ничего не происходит. В настройках нужно заполнить поля, которые относятся к почте и SMTP.
А как настроить SMTP в каком файле?
В smtp.php сейчас
<?php
$container->loadFromExtension('swiftmailer', [
'transport' => 'smtp',
'username' => 'user',
'password' => 'pass',
'host' => 'example.org',
'port' => '12345',
'encryption' => 'tls',
'auth-mode' => 'login',
'timeout' => '1000',
'source_ip' => '127.0.0.1',
'logging' => true,
'local_domain' => 'local.example.org',
]); -
появляется сообщение: 'Ошибка. Неправильный код". Пробовал несколько раз. Данные введены верно. В чем ошибка?
Покажите скриншот. Скорее всего не настроена отправка почты через SMTP и после того как вводите капчу ничего не происходит. В настройках нужно заполнить поля, которые относятся к почте и SMTP.
Либо просто убрать её?
В стандартном шаблоне форма подключается в поле "Прикрепить форму" (страница "Контакты"). Чтобы убрать капчу, нужно убрать строку в файле "config/resources/forms/contacts.yaml":
- { name: captcha, label: Captcha, type: CaptchaType }
Документация:
https://shopker.org/documentation/forms