Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1 2018-03-21 00:35:59

Motoforum71
Новичок
Зарегистрирован: 2018-03-21
Сообщений: 4

Почта не доходит до адресата. Проблема с кириллическим доменом?

Доброго дня.

Суть проблемы такова. Когда при администрировании ставлю почту не связанную с форумом, письма регистрации и тп. складируются на автоматической почте хостинга.  На хостинге посоветовали поставить связанную с доменом. А форум не понимает адреса вида [email protected]. Ругается на неверный формат.


Совет хостера: Можно прописать емейл прямо в базе. Уточните на форуме по Вашему движку где именно (таблица/поле) находится адрес отправителя. Вписать емейл туда можно через phpMyAdmin.

Вот, уточняю... Подскажите плиз

Offline

#2 2018-03-21 05:51:28

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

@Motoforum71, откройте через phpMyAdmin таблицу config в базе форума.
Найдите строку со значением o_webmaster_email в поле conf_name (придется пролистать несколько страниц со строками) и внесите в нее значение [email protected] в поле conf_value. После этого в папке /cache нужно удалить файл cache_config.php.


А лучше внесите такие изменения в файл /include/email.php:
1. заменить код

return preg_match('%^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|("[^"]+"))@((\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\])|(([a-zA-Z\d\-]+\.)+[a-zA-Z]{2,}))$%D', $email);

на код

return preg_match('%^([^\x00-\x1F\\\/\s@]+)@(?:[\p{L}\p{N}]+(?:\-[\p{L}\p{N}]+)*\.)*\p{L}+$%Du', $email);

2. заменить код

	$to = pun_trim(preg_replace('%[\n\r]+%s', '', $to));
	$subject = pun_trim(preg_replace('%[\n\r]+%s', '', $subject));
	$from_email = pun_trim(preg_replace('%[\n\r:]+%s', '', $from_email));
	$from_name = pun_trim(preg_replace('%[\n\r:]+%s', '', str_replace('"', '', $from_name)));
	$reply_to_email = pun_trim(preg_replace('%[\n\r:]+%s', '', $reply_to_email));
	$reply_to_name = pun_trim(preg_replace('%[\n\r:]+%s', '', str_replace('"', '', $reply_to_name)));

на код

	$to = idn_to_ascii(pun_trim(preg_replace('%[\n\r]+%s', '', $to)), 0, \INTL_IDNA_VARIANT_UTS46);
	$subject = pun_trim(preg_replace('%[\n\r]+%s', '', $subject));
	$from_email = idn_to_ascii(pun_trim(preg_replace('%[\n\r:]+%s', '', $from_email)), 0, \INTL_IDNA_VARIANT_UTS46);
	$from_name = pun_trim(preg_replace('%[\n\r:]+%s', '', str_replace('"', '', $from_name)));
	$reply_to_email = idn_to_ascii(pun_trim(preg_replace('%[\n\r:]+%s', '', $reply_to_email)), 0, \INTL_IDNA_VARIANT_UTS46);
	$reply_to_name = pun_trim(preg_replace('%[\n\r:]+%s', '', str_replace('"', '', $reply_to_name)));

3. Зайти в админку в опции и в поле Почта Вебмастера ввести mail@мото71.рф.
4. Протестировать отправку почты.

Если будет работать, внесу в свою сборк изменения.

Offline

#3 2018-03-21 08:24:48

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

@Motoforum71, можно еще так сделать https://fluxbb.qb7.ru/forum/viewtopic.p … 245#p30245

Offline

#4 2018-03-21 16:52:39

Motoforum71
Новичок
Зарегистрирован: 2018-03-21
Сообщений: 4

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

Приветстую.

В кириллице принял почту, но при регистрации выскочило вот что:
Fatal error: Call to undefined function idn_to_ascii() in /home/allauru/public_html/мото71.рф/forum/include/email.php on line 229


229 это:     $to = idn_to_ascii(pun_trim(preg_replace('%[\n\r]+%s', '', $to)), 0, \INTL_IDNA_VARIANT_UTS46);

второй пока не пробовал.

Offline

#5 2018-03-21 19:08:37

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

@Motoforum71, модули нужные в php не подключены. Если есть возможность, то нужно подключить в php.ini (возможно настройка модулей php есть в панели управления сайтом) модуль php_intl. Или поменять регулярку по ссылке постов выше и использовать паникод [email protected].

Offline

#6 2018-03-21 20:10:32

Motoforum71
Новичок
Зарегистрирован: 2018-03-21
Сообщений: 4

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

То есть установить вашу сбоку поверх?  Я открыл ссылку, а там 50 стр обсуждения, не знаю что именно искать.

в Управлении сайтом ничего такого нет, к сожалению.

Offline

#7 2018-03-21 20:27:23

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

@Motoforum71, в файле include/email.php нужно поменять одну строку

	return preg_match('%^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|("[^"]+"))@((\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\])|(([a-zA-Z\d\-]+\.)+[a-zA-Z]{2,}))$%D', $email);

на

	return preg_match('%^(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){255,})(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){65,}@)(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22))(?:\.(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-[a-z0-9]+)*\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-[a-z0-9]+)*)|(?:\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\]))$%iD', $email);

Предыдущие изменения убрать, если вы их еще не откатили.

Offline

#8 2018-03-21 20:47:08

Motoforum71
Новичок
Зарегистрирован: 2018-03-21
Сообщений: 4

Re: Почта не доходит до адресата. Проблема с кириллическим доменом?

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

Offline

Подвал доски

Под управлением FluxBB. Хостинг Hostens