不使用URL重写的Meta Refresh

3
我们正在推出一个仅限会员访问的WordPress网站,该网站只能隐藏页面/帖子;然而,我们的部分内容是通过API提供的,无法轻易地隐藏。
迄今为止,我最好的解决方案是在可以使用我们的会员插件限制的页面上嵌入一个HTML元重定向到适当的URL。
<meta http-equiv="refresh" content="0; url=https://www.example.com/?taxonomy=inventory" />

这种方法的唯一缺点是URL会被暴露,任何人都可以分发源代码。

有没有办法在不重写URL的情况下使用meta重定向?我在.htaccess文件中尝试了一些方法,但没有一个可行的解决方案。

1个回答

3

不要使用meta refresh(可以轻松地被正确的浏览器插件屏蔽),相反,您应该专注于添加页面和帖子挂钩,检查查看者是否具有适当的权限(已登录,成员等)以查看该页并将其重定向到主页(或自定义错误页)。

这可能无法防止隐藏页面链接被共享,但可以防止内容被阅读。


我们正在使用的会员插件是双重用途,与此完全无关,我们不准备放弃它...因此我被迫与它和平共处。 URL的分发是我们绝对不能允许的,所以不知何故...在重定向期间,我必须掩盖URL。 - pianoman
除非您使用永远不会重复到达相同内容的一次性URL,否则无法防止最终用户共享URL。 如果您需要掩盖URL,那么请创建一个由WordPress处理的缓冲URL,并在检查其会员身份状态后将其发送到真实的URL。 您必须在某个地方做出让步以使其正常工作。 - Nahydrin
请更详细地解释一下这个缓冲区 URL。我对这个概念还不熟悉。 - pianoman
您可以使用插件标记带有自定义信息的页面,或将所有文章/页面请求重定向到特定的WordPress文件。然后,您可以检查他们是否已登录并且具有查看文章/页面的访问权限(如果需要)。如果除主页以外的所有内容都应该是仅限会员的,则只需在post.php和page.php文件中检查他们是否已登录并具有访问权限,就可以了。 - Nahydrin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接