# Как разрешить вход с нескольких имен хостов?

**URL:** https://meta.discourse.org/t/how-to-allow-multiple-hostnames-to-login/128632
**Category:** Support
**Created:** [15.Сентябрь.2019 16:11:09 UTC](https://meta.discourse.org/t/how-to-allow-multiple-hostnames-to-login/128632 "2019-09-15T16:11:09Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Garrick](https://avatars.discourse-cdn.com/v4/letter/g/b9bd4f/32.png) [@Garrick](https://meta.discourse.org/u/Garrick)
#### Post date: [15.Сентябрь.2019 16:11:09 UTC](https://meta.discourse.org/t/how-to-allow-multiple-hostnames-to-login/128632/1 "2019-09-15T16:11:09Z")

</div>

Я хочу иметь основное доменное имя, а также дополнительные домены — например, тот же домен, но с .net, .org, или даже .onion-адрес, которые можно использовать для доступа и входа на сайт. Я могу настроить доступ к просмотру сайта, но вход не работает — при попытке входа появляется ошибка. Есть ли более простой способ решить эту задачу?

---

<div class="post-metadata">

### Author: ![JimPas](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jimpas/32/148179_2.png) [@JimPas](https://meta.discourse.org/u/JimPas)
#### Post date: [16.Сентябрь.2019 05:01:21 UTC](https://meta.discourse.org/t/how-to-allow-multiple-hostnames-to-login/128632/2 "2019-09-16T05:01:21Z")

</div>

Похоже, вы хотите, чтобы ваш экземпляр Discourse был доступен по нескольким доменным именам (один и тот же второй уровень домена, но разные первые уровни (.net, .org и т. д.)) **и** чтобы можно было войти на форум с каждого из них. То есть, если один пользователь находится на вашем домене .net, а другой — на .org, вы хотите, чтобы **оба** могли войти на форум? Правильно ли я понял?

Думаю, для этого потребуется плагин или реализация новой функции, аналогичной той, что уже встроена в Discourse для единого входа (SSO) через Google, Yahoo и другие сервисы. На этот вопрос должен ответить член команды Discourse или автор плагина.

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [16.Сентябрь.2019 06:33:42 UTC](https://meta.discourse.org/t/how-to-allow-multiple-hostnames-to-login/128632/3 "2019-09-16T06:33:42Z")

</div>

Вам потребуется отключить эту функцию [discourse/lib/middleware/enforce\_hostname.rb at main · discourse/discourse · GitHub](https://github.com/discourse/discourse/blob/master/lib/middleware/enforce_hostname.rb)

Код плагина будет следующим:

```
after_initialize do

  module ::OverrideEnforceHostname
    def call(env)
      @app.call(env)
    end
  end

  class Middleware::EnforceHostname
    prepend OverrideEnforceHostname
  end

end

```

---

<div class="post-metadata">

### Author: ![Joker\_Star](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/joker_star/32/276583_2.png) [@Joker\_Star](https://meta.discourse.org/u/Joker_Star)
#### Post date: [26.Октябрь.2022 02:48:18 UTC](https://meta.discourse.org/t/how-to-allow-multiple-hostnames-to-login/128632/4 "2022-10-26T02:48:18Z")

</div>

Я вставил этот код в существующий плагин.rb и проверил.  
Но результат тот же.
