Сборки серверов

СливПлатные

Сейчас онлайн

  • Kudamoi
  • FireGop
  • ftl2nd
  • F_ery_a
  • cL3v3r47
  • lilaktt
  • SKITLSPDE
  • LuckyManZ
  • iktaniyalol
  • XILegacyy
  • Gangek
  • Qipish
  • ThienDinh
  • CaMi1oN
  • SauronYe
  • NextLand
  • 2busy2sleep
  • zapacka
  • skipperscabin
  • GL1ST
  • RogueZ
  • GeroyGrief
  • bobobo
  • fleyn37
  • Set
  • tostetrqr
  • TunOri
  • vnezapnik
  • maksim00077
  • 3ffwfwefr
  • Swerdef
  • shohrux
  • Immm
  • MrGladey
  • FOUQ
  • Iruka
  • GAGARNA
  • drixLrxd
  • alham
  • k1mSs
  • NightVision
  • pro53831
  • vladas744
  • Koshartka
  • Minv0x
  • srlss123
  • lHIT
  • Лопух
  • Fell1x
  • Kostiel
  • 120255266100m
  • sepersi
  • Tommasino
  • tangenser10
  • gumno406
  • drinice
  • tolikprost
  • zxcTrupik
  • bebryk
  • ermakbag
  • Kont
  • Minecraftik
  • noidi
  • l0calh0s1
  • Tony
  • Chuchelo_2077
  • Gl_Lart
  • ccSetch
  • gulping
  • Mr_Oma
  • livemer
  • XXMonsterTy
  • gony_co
  • _air01
  • QenTerra
  • isahl
  • platikmoggg
  • itsDesterYT
  • MystalDev
  • NOXYTESTER
  • Mu_Guang
  • catnekhuy
  • MrJohny
  • Dmitriy_Yurck
  • влывпыор
  • consers

Инструкция Как сделать форум XenForo приватным (без доступа для гостей)

  • Автор темыbobobo
  • Дата начала
bobobo
Я управляю несколькими приватными сайтами, где для просмотра контента форума и публикации сообщений нужно быть зарегистрированным и одобренным членом. Существует несколько подходов для настройки сайта для приватного использования — цель этого руководства — объяснить различия и описать мой предпочтительный подход.

Примером, который я использую, являются форумы для членов REBAA, которые я веду для Ассоциации агентов по покупке недвижимости Австралии — некоммерческой отраслевой ассоциации. Форумы предназначены для текущих членов, чтобы они могли делиться и обсуждать отраслевые вопросы в приватном пространстве, а также координировать свою деятельность, такую как образовательные и профессиональные мероприятия.

Желаемые результаты

Наша цель для приватных форумов REBAA заключалась в следующем:

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

Простой подход для того, чтобы сделать сайт приватным

Существует очень простой способ сделать форум приватным. Просто измените разрешение "Просмотр" для группы "Не зарегистрированные / Не подтверждённые" на "Нет":

1740876682321
Это не позволит гостям просматривать ваш сайт в любом виде.

Однако конечный результат будет немного грязным:
1740876709050

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

С этим нет ничего плохого, если вас устраивает простой и прямолинейный подход, но мы решили сделать его более информативным для сайта REBAA.

Более элегантный подход к приватному сайту

Форумы для членов REBAA связаны с основным сайтом REBAA, который используется множеством разных типов людей, включая потенциальных клиентов для организаций-членов REBAA. Поэтому мы решили, что более чистый пользовательский интерфейс будет лучшим подходом.

Так что вместо того, чтобы просто запрещать доступ ко всему форуму, мы используем более тонкий подход:
1740876743166

Очень простой интерфейс — объясняет цель сайта и кто получит доступ.

Для достижения этого нам нужно было скрыть несколько элементов интерфейса, которые обычно присутствуют, и изменить нашу модель разрешений, чтобы мы не просто возвращали ошибку 403.

Большинство изменений в интерфейсе можно сделать через админ-панель, но есть несколько, для которых я создал простой аддон под названием Private Site, чтобы помочь с этим, включая сообщение, которое отображается под заголовком страницы (это также можно сделать через размещение рекламы).

Вот процесс, через который я прошёл для REBAA:​

Шаг 1: Сделайте резервную копию вашего сайта​

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

Шаг 2: Установите аддон Private Site​

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

Аддон выполняет три функции:
  • позволяет показывать сообщение на главной странице форума для гостей
  • скрывает кнопку "Новые сообщения" для гостей
  • скрывает ссылку "Что нового" в заголовке на мобильных устройствах для гостей
Вы можете найти аддон здесь: Private Site

Шаг 3: Настройте сообщение на главной странице для гостей​

Если вы используете аддон, настройте сообщение в параметрах Private Site.

Если вы делаете это сами, создайте рекламное объявление для размещения "Forum overview: Top" и убедитесь, что оно отображается только для группы пользователей Unregistered / Unconfirmed.

Шаг 4: Обновите разрешения пользователей​


Не зарегистрированные / Не подтвержденные

Нам нужно, чтобы наши гости могли просматривать сайт, чтобы избежать ошибки 403 (Forbidden), но мы не хотим, чтобы они видели контент или взаимодействовали с чем-либо другим.

Начните с использования Quick set для установки всех разрешений на "Never".
1740876882342
Затем установите разрешение "View" на "Yes", чтобы они могли видеть сайт (но не контент).
1740876997430
Вы также можете позволить гостям использовать форму обратной связи, но если вы решите это сделать, обязательно настройте CAPTCHA, чтобы помочь управлять спам-ботами.
1740877026122
Оставьте все остальные разрешения для гостей установлены на "Never".

Примечание: мы могли бы достичь того же результата, установив все другие разрешения для гостей на "No", а не на "Never", однако это может привести к ошибкам, когда мы случайно разрешим гостям просматривать контент, который они не должны видеть. Если мы как-то настроим разрешения (например, разрешения для узлов) для группы пользователей Unregistered / Unconfirmed на "Yes", это переопределит установленное по умолчанию "No". Мы никогда не хотим, чтобы гости просматривали контент в любой ситуации, поэтому "Never" — более безопасный выбор.

До тех пор, пока у пользователя нет аккаунта в статусе "Valid", он не сможет просматривать контент или взаимодействовать с сайтом. Это означает, что заблокированные / отклоненные / недействительные / неподтвержденные и т. д. аккаунты не смогут просматривать контент или взаимодействовать с сайтом, что именно и требуется.

Зарегистрированные пользователи

Установите разрешения для зарегистрированных пользователей как обычно.

Разрешения для узлов

Установите разрешения для узлов как обычно — только пользователи с зарегистрированным действительным аккаунтом смогут что-либо просматривать, поэтому нет необходимости устанавливать явные разрешения для узлов для группы пользователей Unregistered / Unconfirmed.

Шаг 5: обновление параметров администратора​


Есть несколько параметров администратора, которые нужно настроить для приватного сайта.

Регистрация пользователей

Включите ручное одобрение — обычно вам нужно будет одобрить участников, прежде чем предоставить им доступ к вашему приватному сайту. Рекомендация: включить.

Общий доступ

Вы не захотите, чтобы люди делились контентом с вашего приватного сайта в других местах, поэтому отключите все опции для общего доступа. Это также автоматически скроет виджет "Поделиться этой страницей". Рекомендация: отключить все опции общего доступа.

Генерация XML-карты сайта

Автоматически строить карту сайта — если сайт приватный, Google не увидит контент, и, скорее всего, вы не хотите, чтобы ваш сайт индексировался поисковыми системами. Рекомендация: отключить.

Автоматически отправлять карту сайта в поисковые системы — Рекомендация: отключить.

Шаг 6: скрытие некоторых ссылок в навигации от гостей​


Некоторые ссылки в навигационной панели не будут выполнять ничего для гостей, если они не могут просматривать контент, поэтому давайте очистим интерфейс, скрыв эти ссылки.

Перейдите на страницу Public navigation в разделе Setup. Мы можем скрыть ссылки навигации, изменив условие отображения для каждой ссылки.

Форумы (раздел)

Новые сообщения
— измените условие отображения на {$xf.options.forumsDefaultPage} != 'new_posts' && $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Список форумов — измените условие отображения на {$xf.options.forumsDefaultPage} != 'forums' && $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Найти темы — измените условие отображения на $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Отслеживаемое — измените условие отображения на $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Отметить форумы как прочитанные — измените условие отображения на $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Что нового (раздел) — измените условие отображения на: $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Шаг 7: скрытие некоторых виджетов от гостей​


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

Перейдите на страницу виджетов в разделе Appearance. Как и с навигационными ссылками, мы можем скрыть виджеты, изменив условие отображения для каждого виджета.

Статистика форума — измените условие отображения на: $xf.visitor.user_id && $xf.visitor.user_state == 'valid'

Не забудьте проверить другие виджеты, которые отображаются для гостей.

Заключение


Настроить приватный сайт без доступа к контенту для гостей при сохранении чистого интерфейса достаточно просто.
 
ВерхНиз