【问题标题】:rerouting a URL with querystring through an anchor link通过锚链接重新路由带有查询字符串的 URL
【发布时间】:2014-08-13 08:58:02
【问题描述】:

设置基本上是页面 A 带有锚链接

<a href="/index.php/iframe-wrapper?http://www.[desired link].com">

点击后,URL 会在用户浏览器中这样写入

http://www.[site].com/index.php/iframe-wrapper?http://www.[desired link].com

iframe 通过 javascript 调用查询字符串之后的内容,并通过

将其显示在框架中
var query = window.location.search.slice(1); 

基本上可以让页面 A 上的 URL 显示在页面 B 上的 iframe 中

我不知道如何从最终结果中删除查询字符串(可能通过 htaccess?)(因为它可以在任何用户浏览器上修改,导致各种漏洞)

如果有人能通过 htaccess 或其他类似方法帮助我,我将不胜感激

【问题讨论】:

    标签: javascript jquery html string .htaccess


    【解决方案1】:

    我不知道 .htaccess 有什么方法可以帮助减少漏洞的机会。您仍然接受查询字符串并将其用作 iframe 源,这意味着任何人仍然可以在查询字符串中提交任何 URL。

    一种更安全的处理方式可能是创建一个包含所有潜在 URL 的数据库表。您可以手动输入它们,或者如果它们经常更改,您可以使用一个安全的表单,让经过身份验证的用户(或管理员)可以管理它们。

    然后在链接的查询字符串中,您可以简单地传递包含您要使用的 URL 的表行的 ID,并使用 PHP 在服务器端检索该 ID 的相应 URL。

    这样,iframe 只能显示存储在数据库中的 URL 之一。有人仍然可以在查询字符串中输入他们想要的任何内容,但这并不重要,因为如果它不是有效 URL 的 ID,您可以显示错误消息(或默认 URL 或您想要的任何其他后备行为)。

    【讨论】:

      猜你喜欢
      • 2014-03-05
      • 1970-01-01
      • 2020-02-14
      • 2012-04-01
      • 2011-01-16
      • 2018-04-30
      • 2018-02-17
      • 1970-01-01
      • 2017-06-16
      相关资源
      最近更新 更多