【问题标题】:Symfony2 - how to check if referer is external referer?Symfony2 - 如何检查引用者是否是外部引用者?
【发布时间】:2015-01-20 21:57:40
【问题描述】:

我为我的登录创建了一个自定义的success_handler,在这里我想检查引用者是否是外部的。我怎样才能最好地做到这一点?

$ref = $request->headers->get('Referer'); 

检查引用者是本地 url(意思是:来自 symfony 项目内部)还是外部 url 的最佳方法是什么?

提前致谢。

【问题讨论】:

    标签: php symfony referer


    【解决方案1】:

    你可以得到一个当前域

    $this->getRequest()->getHost()
    

    然后通过正则表达式匹配它,请参见此处: Regex to match simple domain

    【讨论】:

    • 我明白,他想检查项目是否是外部的(恕我直言,来自其他域的外部手段?)。
    • 您可以在 parameters.yml 中将允许的主机作为参数并将其传递给 success_handler 并检查 $ref 是否在其中
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-30
    • 2014-05-27
    • 1970-01-01
    • 2022-07-20
    • 2021-12-18
    • 2013-07-05
    • 1970-01-01
    相关资源
    最近更新 更多