Пользователи не могут создать новый аккаунт (ошибка регистрации)

Сегодня я заметил, что пользователи не могут создать новую учётную запись. Это можно воспроизвести на www.llastres.com

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

Очевидно, что email отсутствует в базе данных

У меня только что нашлось время на быстрый тестовый запуск, и в консоли я вижу ошибку проверки электронной почты — XHRGEThttps://llastres.com/u/check_email?email=jammydodger@jammydodger.monster [HTTP/1.1 500 Internal Server Error 0ms]

На моём тестовом сайте (обновлённом сегодня утром) такой ошибки нет. Есть ли в вашей настройке что-то примечательное, что могло бы дать подсказку? Плагины, кастомизации и т. д.?

Никаких кастомизаций или странного кода, только официальные плагины и компоненты темы.

Я нахожусь на последней сборке, и всё обновлено.

Что-нибудь отображается в логах? Они должны быть по адресу https://llastres.com/logs/. Ошибка 500, которую видит Jammy, означает, что что-то идет не так на стороне сервера.

Для меня это ново, не могу понять, как исправить эти предупреждения :pleading_face:

Последние четыре предупреждения:

4

Сообщение

(facebook) Ошибка аутентификации! no_authorization_code: OmniAuth::Strategies::Facebook::NoAuthorizationCodeError, необходимо передать либо code (через URL или через зашифрованный cookie fbsr_XXX)

Трассировка стека

/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-1.9.2/lib/omniauth/strategy.rb:163:in log' /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-1.9.2/lib/omniauth/strategy.rb:486:in fail!’
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-facebook-9.0.0/lib/omniauth/strategies/facebook.rb:75:in rescue in callback_phase' /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-facebook-9.0.0/lib/omniauth/strategies/facebook.rb:70:in callback_phase’
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-1.9.2/lib/omniauth/strategy.rb:238:in callback_call' /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-1.9.2/lib/omniauth/strategy.rb:189:in call!’
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-1.9.2/lib/omniauth/strategy.rb:169:in call' /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/omniauth-1.9.2/lib/omniauth/builder.rb:45:in call’
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:50:in call' /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-2.2.4/lib/rack/tempfile_reaper.rb:15:in call’

Окружение

HTTP HOSTS: llastres.com

3

Сообщение (3 сообщения)

RegexpError (цель оператора повторения не указана: /@(.+.)?(mailinator.com|*.ru)$/i)
lib/validators/email_validator.rb:45:in initialize' lib/validators/email_validator.rb:45:in new’
lib/validators/email_validator.rb:45:in email_in_restriction_setting?' lib/validators/email_validator.rb:29:in allowed?’
app/controllers/users_controller.rb:545:in check_email' app/controllers/application_controller.rb:413:in block in with_resolved_locale’
app/controllers/application_controller.rb:413:in with_resolved_locale' lib/middleware/omniauth_bypass_middleware.rb:71:in call’
lib/content_security_policy/middleware.rb:12:in call' lib/middleware/anonymous_cache.rb:368:in call’
config/initializers/100-quiet_logger.rb:23:in call' config/initializers/100-silence_logger.rb:31:in call’
lib/middleware/enforce_hostname.rb:23:in call' lib/middleware/request_tracker.rb:222:in call’

Трассировка стека

lib/validators/email_validator.rb:45:in initialize' lib/validators/email_validator.rb:45:in new’
lib/validators/email_validator.rb:45:in email_in_restriction_setting?' lib/validators/email_validator.rb:29:in allowed?’
app/controllers/users_controller.rb:545:in check_email' actionpack (7.0.3.1) lib/action_controller/metal/basic_implicit_render.rb:6:in send_action’
actionpack (7.0.3.1) lib/abstract_controller/base.rb:215:in process_action' actionpack (7.0.3.1) lib/action_controller/metal/rendering.rb:53:in process_action’
actionpack (7.0.3.1) lib/abstract_controller/callbacks.rb:234:in block in process_action' activesupport (7.0.3.1) lib/active_support/callbacks.rb:118:in block in run_callbacks’

Окружение

HTTP HOSTS: llastres.com

2

Сообщение (13 сообщений)

RegexpError (цель оператора повторения не указана: /@(.+.)?(mailinator.com|*.ru)$/i)
lib/validators/email_validator.rb:45:in initialize' lib/validators/email_validator.rb:45:in new’
lib/validators/email_validator.rb:45:in email_in_restriction_setting?' lib/validators/email_validator.rb:29:in allowed?’
app/controllers/users_controller.rb:545:in check_email' app/controllers/application_controller.rb:413:in block in with_resolved_locale’
app/controllers/application_controller.rb:413:in with_resolved_locale' lib/middleware/omniauth_bypass_middleware.rb:71:in call’
lib/content_security_policy/middleware.rb:12:in call' lib/middleware/anonymous_cache.rb:366:in call’
config/initializers/100-quiet_logger.rb:23:in call' config/initializers/100-silence_logger.rb:31:in call’
lib/middleware/enforce_hostname.rb:23:in call' lib/middleware/request_tracker.rb:222:in call’

Трассировка стека

lib/validators/email_validator.rb:45:in initialize' lib/validators/email_validator.rb:45:in new’
lib/validators/email_validator.rb:45:in email_in_restriction_setting?' lib/validators/email_validator.rb:29:in allowed?’
app/controllers/users_controller.rb:545:in check_email' actionpack (7.0.3.1) lib/action_controller/metal/basic_implicit_render.rb:6:in send_action’
actionpack (7.0.3.1) lib/abstract_controller/base.rb:215:in process_action' actionpack (7.0.3.1) lib/action_controller/metal/rendering.rb:53:in process_action’
actionpack (7.0.3.1) lib/abstract_controller/callbacks.rb:234:in block in process_action' activesupport (7.0.3.1) lib/active_support/callbacks.rb:118:in block in run_callbacks’

Окружение

HTTP HOSTS: llastres.com

1

Сообщение (17 сообщений)

RegexpError (цель оператора повторения не указана: /@(.+.)?(mailinator.com|*.ru)$/i)
lib/validators/email_validator.rb:45:in initialize' lib/validators/email_validator.rb:45:in new’
lib/validators/email_validator.rb:45:in email_in_restriction_setting?' lib/validators/email_validator.rb:29:in allowed?’
lib/validators/email_validator.rb:15:in validate_each' app/controllers/users_controller.rb:664:in create’
app/controllers/application_controller.rb:413:in block in with_resolved_locale' app/controllers/application_controller.rb:413:in with_resolved_locale’
lib/middleware/omniauth_bypass_middleware.rb:71:in call' lib/content_security_policy/middleware.rb:12:in call’
lib/middleware/anonymous_cache.rb:368:in call' config/initializers/100-quiet_logger.rb:23:in call’
config/initializers/100-silence_logger.rb:31:in call' lib/middleware/enforce_hostname.rb:23:in call’
lib/middleware/request_tracker.rb:209:in `call’

Трассировка стека

lib/validators/email_validator.rb:45:in initialize' lib/validators/email_validator.rb:45:in new’
lib/validators/email_validator.rb:45:in email_in_restriction_setting?' lib/validators/email_validator.rb:29:in allowed?’
lib/validators/email_validator.rb:15:in validate_each' activemodel (7.0.3.1) lib/active_model/validator.rb:153:in block in validate’
activemodel (7.0.3.1) lib/active_model/validator.rb:149:in each' activemodel (7.0.3.1) lib/active_model/validator.rb:149:in validate’
activesupport (7.0.3.1) lib/active_support/callbacks.rb:423:in block in make_lambda' activesupport (7.0.3.1) lib/active_support/callbacks.rb:180:in block (2 levels) in halting_and_conditional’

Окружение

HTTP HOSTS: llastres.com

У меня нет для вас ответа, я недостаточно хорошо знаю этот код — но, похоже, дело либо в настройке «Заблокированные домены электронной почты» (есть ли там что-нибудь?), либо в настройке «Нормализация адресов электронной почты», если она у вас включена?

Надеюсь, кто-то другой, кто лучше разбирается в этом коде, сможет дать вам что-то более конкретное.

Привет, Рори! Извини, я был занят и не мог обновить. Я очистил список «заблокированные домены электронной почты», и теперь, кажется, всё работает. Я также очистил логи. Буду следить за системой на предмет новых предупреждений.

Было бы полезно, если бы вы могли поделиться тем, что было указано в поле домена заблокированных электронных писем.

Два поля:

mailinator.com
*.ru

@undasein, я попробовал создать новую учётную запись на вашем форуме, и у меня всё получилось.
https://llastres.com/u/twofoursixeight/summary

Чтобы связать это — @Stephen создал тему #баг:

Рад, что вам удалось решить проблему на вашем сайте, @undasein :+1:

И если вы уберёте звёздочку-подстановочный знак из .ru, это будет работать так, как вы задумали, не блокируя все регистрации.

Спасибо всем за вашу помощь. Так держать!