另一方面,如果我可以安装一个 wiki 并在WordPress和 wiki 之间共享登录凭据,我会很高兴。我前段时间破解了MediaWiki,通过会话 cookie 与另一个站点(在ASP Classic中)共享登录信息,这样做很痛苦,维护起来更糟糕。理想情况下,我想找一个插件或知道更优雅解决方案的人。
6 回答
教程WordPress、bbPress 和 MediaWiki应该让您走上正确的轨道,将 MediaWiki 集成到您的 WordPress 安装中。这肯定比破解 WordPress 来拥有 wiki 功能要容易得多,尤其是在您描述的那种精细权限的情况下。
WPMW是一种在 WordPress 安装中集成 MediaWiki 的解决方案,可能会有所帮助。
MediaWiki 和 Wordpress 都支持 OpenID:
http://www.wordpress.org/extend/plugins/openid/
http://www.mediawiki.org/wiki/Extension:OpenID
不过,我认为对于自动登录(登录到一个后,您会自动登录到另一个),您需要考虑实现 checkid_immediate
http://www.openid.net/specs/openid-authentication-2_0.html#anchor28
CUNY Academic Commons Announces WPMu-MediaWiki Single Sign-on中描述了另一种解决方案。它只是创建了一些使用 WordPress 登录作为主服务器的东西。
我的公司在内部使用 WordPress 和 MediaWiki,我们使用 HTTP_AUTH 访问控制来创建“单点登录”。随着我们添加更多应用程序,我们只需将它们集成到可行的 HTTP_AUTH 系统中。为了安全起见,您可以通过 SSL 运行 HTTP_AUTH。基本步骤是:
配置 .htaccess 以指定身份验证类型。我们在生产中使用 MySQL,但您可以拥有一个简单的 htpasswd 文件。
在 WordPress 目录的 .htaccess 文件中添加以下内容:
<文件 wp-login.php> AuthType 基本 AuthName“受限访问” AuthUserFile /some/path/to/htpasswd 需要有效用户 </文件>
在 WordPress wp-admin/ 目录的 .htaccess 中添加以下内容:
AuthType 基本 AuthName“受限访问” AuthUserFile /some/path/to/htpasswd 需要有效用户
在 MediaWiki 目录的 .htaccess 文件中添加以下内容:
AuthType 基本 AuthName“受限访问” AuthUserFile /some/path/to/htpasswd
然后安装 MediaWiki 的HttpAuth扩展和 WordPress 的HTTP 身份验证插件并进行配置。我们不得不对 MediaWiki 扩展进行一些细微的修改,因为我们的托管环境不提供 mod_php,但如果你有 mod_php,它会开箱即用。
请注意,我们的环境是私有 Intranet,因此每个人都经过身份验证。上述 .htaccess 文件适用于可公开查看的博客,但可能需要对 MediaWiki .htaccess 进行一些额外的调整,具体取决于您是否希望每个人都需要经过身份验证以及该站点是否公开可用。