# 我可以切换所使用的提供者站点（从 staging 到 prod）吗？

**URL:** <https://meta.discourse.org/t/can-i-switch-the-site-being-used-as-provider-staging-to-prod/330577>\
**Category:** WordPress\
**Created:** [2024年十月12日 14:01 UTC](https://meta.discourse.org/t/can-i-switch-the-site-being-used-as-provider-staging-to-prod/330577 "2024-10-12T14:01:21Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)\
**Post date:** [2024年十月13日 20:07 UTC](https://meta.discourse.org/t/can-i-switch-the-site-being-used-as-provider-staging-to-prod/330577/2 "2024-10-13T20:07:49Z")

</div>

> [@Firsh](#):
>
> 他们的 WP 用户 ID 和电子邮件保持不变。

_如果_ 您的生产和暂存站点上的 WP 用户 ID 和电子邮件相同，则无需对 Discourse 进行任何更改即可切换到生产站点。

最好仔细检查以确保用户 ID 相同。我似乎记得使用 WP Engine 的暂存和生产站点时，无法保证暂存和生产站点之间的用户 ID 会匹配——它们使用完全独立的数据库。确保您的生产和暂存站点不是这种情况。

如果您不确定暂存和生产站点之间的用户 ID 是否会匹配，_并且_ SSO 负载中未将 `require_activation` 参数设置为 `true`，则可以在切换到生产站点之前安全地删除 Discourse 数据库中的所有现有 `SingleSignOnRecord` 条目。现有用户首次通过 WordPress 登录 Discourse 时，Discourse 将根据他们的电子邮件地址查找他们，并为他们生成一个新的 `SingleSignOnRecord`。

可以通过 Rails 控制台删除现有的 `SingleSignOnRecord` 条目：

```ruby
SingleSignOnRecord.destroy_all

```

如果 SSO 负载中 _确实_ 将 `require_activation` 参数设置为 `true`，您仍然可以删除 Discourse 端上的 SSO 记录。在现有用户可以从您的生产站点登录 Discourse 之前，您需要将他们的电子邮件地址在 WordPress 中标记为已验证。有关如何从他们的 WordPress 个人资料页面执行此操作的详细信息，请参见此处：[https://meta.discourse.org/t/validate-email-addresses-with-the-wp-discourse-plugin/130085。](https://meta.discourse.org/t/validate-email-addresses-with-the-wp-discourse-plugin/130085%E3%80%82)

---

_[View the full topic](https://meta.discourse.org/t/can-i-switch-the-site-being-used-as-provider-staging-to-prod/330577)._
