是<;a href=";javascript:history.go(-1)"&燃气轮机;回去</a>;安全吗?
我有一个类似于自定义404错误页面标题中的链接,它允许用户像使用浏览器的返回按钮一样转到上一页。我只是想问一下这种链接方式是否安全。我想它是安全的,但我不确定。谢谢你的问候 我可以说一个不“安全”的用例是,如果用户禁用了JavaScript。在这种情况下,您必须使用服务器端代码动态创建链接,将该值用作锚元素上的是<;a href=";javascript:history.go(-1)"&燃气轮机;回去</a>;安全吗?,javascript,php,hyperlink,href,Javascript,Php,Hyperlink,Href,我有一个类似于自定义404错误页面标题中的链接,它允许用户像使用浏览器的返回按钮一样转到上一页。我只是想问一下这种链接方式是否安全。我想它是安全的,但我不确定。谢谢你的问候 我可以说一个不“安全”的用例是,如果用户禁用了JavaScript。在这种情况下,您必须使用服务器端代码动态创建链接,将该值用作锚元素上的href值 另一个要考虑的问题是,如果用户来自一个带有HTTP重定向的页面,用户将陷入一个无休止的来回循环中。 编辑: 如上所述,您可以使用$\u服务器['HTTP\u REFERER']
href
值
另一个要考虑的问题是,如果用户来自一个带有HTTP重定向的页面,用户将陷入一个无休止的来回循环中。 编辑:
如上所述,您可以使用$\u服务器['HTTP\u REFERER']
,但是文档中说
。。这是由用户代理设置的。并非所有用户代理都会设置此选项,
还有一些提供了修改HTTP_REFERER的功能。在里面
简言之,它真的不可信
事实上,大多数浏览器都正确设置了它,看到它不是关键任务,我认为使用它是安全的。您还可以按如下方式说明未设置的浏览器:
if(isset($_SERVER['HTTP_REFERRER']))
{
// Show a Back button link, if the referrer is available
echo "<a href=\"".$_SERVER['HTTP_REFERRER']."\">« Back</a>";
}
else
{
// If not, show a link to your homepage instead
echo "<a href=\"". "//www.yoursite.com" ."\">Home</a>";
}
if(isset($\u服务器['HTTP\u referer']))
{
//如果推荐人可用,则显示后退按钮链接
回声“;
}
其他的
{
//如果没有,则显示指向主页的链接
回声“;
}
Definesafe
,请。你可以想象为非常不在意的用户模拟网站。但在UI点上,它看起来更像一个坏主意,而不是一个安全隐患。浏览器已具有此功能。它将仅返回浏览器历史记录中的一步。唯一不好的是,如果有人从另一个页面(例如:谷歌)访问你的网站,它将返回到谷歌。那么,你为什么要给自己带来一些额外的工作。谢谢,我试图找到如何从用户的来源获取URL,我尝试了$u服务器['HTTP_REFERER',],但它不起作用,所以我找到了解决方案,它起了作用。因此,除了这不是最佳解决方案之外,没有任何安全问题,对吗?我如何通过服务器端做到这一点?如果不跟踪他们的移动,你就不能。我的意思是,以友好方式创建链接?例如,php?@user3019105使用更多信息和php示例更新了答案HTTP\u REFERER是由浏览器设置的,因此这里是您控制变量设置是否正确的原因?