Столкнулся с довольно загадочной ситуацией. У нас есть проект, версии которого зависят от года. Например: 2016.example.ru, 2015.example.ru и тд. Каждая версия лежит в своей папке с номером года. В nginx прописана секция обрабатывающая запрос:
server {
listen 80;
server_name "~^(?\d{4})\.example\.ru$";
Чтобы не создавать кучу секций для каждого года, мы заюзали регулярку в имени сервера.
Роутинг проекта работает как нужно. НО при отправки почты через компонент symfony swiftmailer, настроенный на smtp гугла, происходит непонятная ошибка:
Не удалось отправить уведомление a@example.ru Expected response code 250 but got code "", with message "" Log data: ++ Starting Swift_Transport_EsmtpTransport << 220 smtp.gmail.com ESMTP z78sm1692032lfd.2 - gsmtp >> EHLO ~^(?\d{4})\.example\.ru$ << 501-5.5.4 HELO/EHLO argument "~^(?\d{4})\.example\.ru$" invalid, closing 501-5.5.4 connection. 501 5.5.4
https://support.google.com/mail/?p=helo z78sm1692032lfd.2 - gsmtp !! Expected response code 250 but got code "501", with message "501-5.5.4 HELO/EHLO argument "~^(?\d{4})\.example\.ru$" invalid, closing 501-5.5.4 connection. 501 5.5.4
https://support.google.com/mail/?p=helo z78sm1692032lfd.2 - gsmtp " (code: 501) >> HELO ~^(?\d{4})\.example\.ru$ << !! Expected response code 250 but got code "", with message "" (code: 0)
Судя по всему, при ответе гуглу наш сервер отдает значение хоста из конфига nginx: "~^(?\d{4})\.example\.ru$"
Отправка почты не работает на рабочем сервере, на локальных все тип-топ. Телнетом тоже тестили, все норм.
Подскажите, пожалуйста, где искать проблему или кто-то с таким уже сталкивался? Как появляется значение регулярки в ответе сервака ?