首页 > 解决方案 > 如何阻止其他人在 url 中插入变量

问题描述

黑客倾向于通过 URL 在网站中插入变量。通常没问题,尽管网站有在 HTML 中输出这些变量的插件。

我不希望这种情况发生。如何阻止服务器(在这种情况下是我的 WordPress 网站)接受 URL 中的变量?

我有一些想法来实现这一点,虽然我真的不知道什么是最好的:

  1. 最好是?var=somevar从 URL 中删除(不知道如何使用 nginx 配置)

  2. 或者简单地将“=”更改为“-”;然后我们可以看到黑客或机器人尝试的东西,但变量不会正确或在 HTML 中通过

任何人都知道如何做到这一点?

我已经用谷歌搜索了两个小时,因为我认为不接受这将是一个热门话题?vars=from-anyone。无论如何,关于它的文档很少甚至没有。

标签: wordpressvar

解决方案


  1. 你可以放一些服务器端的条件。通过使用“init”或“wp_head”钩子,您可以添加一些条件/验证来检查 GET 值是否经过身份验证。如果没有,则重定向到主页 url 或任何其他页面。

  2. 但我认为更改 url 模式的最佳方法。你可以使用这个函数“ add_rewrite_rule ”你可以使用这个模式 www.example.com/custom-page/get-value 瞬间 www.example.com/custom-page?var=get-value


推荐阅读