# 需要软登录

**URL:** https://meta.discourse.org/t/soft-login-required/408140
**Category:** Theme component
**Tags:** login
**Created:** [2026年七月21日 13:07 UTC](https://meta.discourse.org/t/soft-login-required/408140 "2026-07-21T13:07:58Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![Don](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/don/32/228726_2.png) [@Don](https://meta.discourse.org/u/Don)
#### Post date: [2026年七月21日 13:07 UTC](https://meta.discourse.org/t/soft-login-required/408140/1 "2026-07-21T13:07:59Z")

</div>

| | | |
| --- | --- | --- |
| ℹ | **摘要** | 为您的社区创建一个灵活的“软性登录门槛” |
| 🛠 | **仓库** | [GitHub - VaperinaDEV/soft-login-required: Creating a flexible Soft Gate for your community · GitHub](https://github.com/VaperinaDEV/soft-login-required) |
| ❤ | **觉得有用？** | [\> ./support --coffee](https://meta.discourse.org/u/don) |
| ❓ | **安装指南** | [如何安装主题或主题组件](https://meta.discourse.org/t/how-do-i-install-a-theme-or-theme-component/63682) |
| 📖 | **Discourse 主题新手？** | [使用 Discourse 主题的入门指南](https://meta.discourse.org/t/beginners-guide-to-using-discourse-themes/91966) |

安装此主题组件

 ![Soft Login Required](https://global.discourse-cdn.com/meta/original/4X/6/1/5/615d3c76cb069f5c410a8681b75649f6948caa4e.png)

👋

### 💡 该组件的功能是什么？

默认情况下，Discourse 为您提供两个主要选项：将站点向所有人开放，或者使用 `login required`（需要登录）站点设置将其完全锁定。

**Soft Login Required** 通过为您的社区创建一个灵活的 **Soft Gate** （软性门槛）来弥补这一_差距_：

🚪 **重定向：** 将匿名访客重定向到 `/login`。当他们尝试访问主题时，系统会将其重定向到 `/login`（并附带 `returnPath` 参数）。

📇 **登录页面上的主题预览卡片：** 当从主题重定向时，会在 `/login` 页面上直接渲染一个自定义预览卡片，向访客展示他们即将解锁的主题的预览/上下文！

🔎 **对 SEO 和爬虫友好：** 搜索引擎机器人（Googlebot、Bingbot 等）通过 Discourse 原生的爬虫检测机制完全绕过前端重定向，从而保护您的 SEO 排名。

🚫 **路由排除规则：** 使用 `disabled_url` 设置轻松排除特定的路径或 URL 模式，支持使用通配符（例如 `/c/*` 或 `/about`）。

* * *

### 📸 工作原理（用户流程）

访客访问主题 ➡ 被重定向到 `/login` ➡ **在登录页面上看到主题预览卡片** ➡ 登录 ➡ 返回到确切的主题 URL

* * *

### ⚠ 重要：设计理念（Soft Login Required 与 Login Required 的区别）

> **关于安全性与用户体验的说明：**  
> 该组件充当一个 **Soft Login Gate** （软性登录门槛），旨在用于 **用户体验层面的登录提示、年龄验证合规性或社区引导** ，同时完全保留 SEO 排名。
> 
> 由于 Discourse 核心会向搜索爬虫提供主题内容以供索引，因此出于设计原因，原始 HTML/JSON 对非 JS 客户端仍然是可访问的。 **如果您的使用场景需要严格的服务器端内容隔离，请改用 Discourse 内置的私有类别或 `login required` 站点设置。**

* * *

**背景** ：[How I Revamped Our Forum's Visitor Flow](https://meta.discourse.org/t/how-i-revamped-our-forums-visitor-flow/408029)

---

_[View the full topic](https://meta.discourse.org/t/soft-login-required/408140)._
