标签: http-referer

是否由客户端设置HTTP_REFERER

我听说HTTP_REFERER可能是欺骗性的.我有2个站点,第一个站点与第二个站点联系,第二个站点使用HTTP_REFERER来验证请求是否来自第一个站点.

如果我从第一个站点收到第二个站点的虚假请求,并且我知道没有提出此请求,我应该怎么想?第三个网站是为所有用户欺骗http_ref,还是个人从浏览器设置中欺骗它?我想知道客户端/浏览器或网站本身是否设置/欺骗了http_ref?

php security http-referer

3
推荐指数
1
解决办法
1221
查看次数

Django:用户注册时保存引用

我想保存用户注册时来自的网站.我对用户在注册前在我的网站上看到的第一页的HTTP引用感兴趣.

我该如何实现它?

django http-referer

3
推荐指数
1
解决办法
769
查看次数

如何在使用 htaccess 404 重定向时查找引用 URL?

我使用下面的代码使用 .htaccess 文件创建了自定义 404 消息(找不到页面)。

RewriteEngine On
ErrorDocument 404 https://%{HTTP_HOST}/404.php
Run Code Online (Sandbox Code Playgroud)

它运行良好,但我想知道导致此重定向的错误 URL 是什么。换句话说,当用户在 404.php 中时,我需要获取HTTP 引用。所以我$_SERVER['HTTP_REFERER']在404.php中使用过,但是它没有返回任何东西。
我哪里出错了?你解决这个问题的方法是什么?

php apache .htaccess http-referer

3
推荐指数
1
解决办法
1669
查看次数

这种方法是否足够好/安全,足以向用户显示错误? - PHP

我正在开发一个网站,由于用户输入或其他原因,我需要显示一些错误消息.为此,我有一个名为error.php的页面,我使用$ _GET获取错误号.所有错误消息都存储在一个数组中.

例:

header( 'Location: error.php?n=11' ); 
Run Code Online (Sandbox Code Playgroud)

但我不希望用户在URL中输入错误代码并查看所有其他错误消息.为了防止这种情况,我想我可以将引用页面列入白名单,并且只有在我的白名单中找到引用者时才显示错误消息.

它应该是公平的(尚未测试;))

$accept = false;
$allowedReferer = array (0=>'page1.php', 'page2.php');
if (in_array($_SERVER['HTTP_REFERER'], $allowedReferer )) {$accept = true;}
if ($accept) { $n=$_GET['n'];echo "Error: " . $errorList[$n];}
Run Code Online (Sandbox Code Playgroud)

这种方法是否足以避免间谍用户

我正在用PHP5做这个

谢谢

php error-handling http-referer

2
推荐指数
2
解决办法
237
查看次数

在什么情况下HTTP_REFERER不起作用?

我之前在foo.php中使用过referrer来判断iframing foo.php的页面是否属于特定的URL.(使用$_SERVER['HTTP_REFERER'])

事实证明,大部分时间,它工作(大约98%的时间),但似乎有些用户到达页面,$_SERVER['HTTP_REFERER']并没有设置在foo.php,因此打破了代码.[ 更新:这些用户声称他们遵循通常的页面流程并且没有在浏览器上使用foo.php的URL(他们让它成为iframe)并且用户从未改变他们的浏览器设置.]

我想知道它可能发生的原因是什么?

http-referer

2
推荐指数
1
解决办法
2080
查看次数

如何使用cURL和PHP来欺骗引用者?

我正在尝试用PHP学习cURL来欺骗引用者到网站.

使用以下脚本我希望完成此操作......但它似乎无法正常工作.

我出错的任何想法/建议?

或者您知道任何可以帮助我解决这个问题的教程吗?

谢谢!

杰西卡

<?php
$host = "http://mysite.com";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $host);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, false);
curl_setopt($ch, CURLOPT_REFERER, "http://google.com");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$result = curl_exec($ch);
curl_close($ch);
?>
Run Code Online (Sandbox Code Playgroud)

php http-referer curl spoof

2
推荐指数
1
解决办法
4700
查看次数

$ _SERVER ['HTTP_REFERER']和cookies

我在SO和其他网站上都读过,这$_SERVER['HTTP_REFERER']是我们作为程序员应该总是避免的事情.阅读PHP手册我们遇到以下几行:

将用户代理引用到当前页面的页面地址(如果有).这是由用户代理设置的.并非所有用户代理都会设置此功能,有些用户可以将HTTP_REFERER修改为功能.简而言之,它无法真正被信任.

考虑到"用户代理"之类的东西,例如Web浏览器(Safari,Chrome,Opera,Firefox,基本上它们都是),手册告诉我们这个变量可能会被它们改变.这是我的第一个问题:

问题1:"用户代理"为什么要修改此参数?Web浏览器不设置此参数的原因是什么?

这只是好奇心,我不会用$_SERVER['HTTP_REFERER'].从我最近的陈述中可以看出,如果我们确实需要这样的功能,我们需要弄明白.我想到的第一件事是一个cookie解决方案,我们在其中执行以下操作:

setcookie('latest_page', __FILE__, 60 * 60 * 24 * 7);
Run Code Online (Sandbox Code Playgroud)

然后,根据您喜欢的方式,您可以恢复所需的内容.这是第二个也是最后一个问题:

问题2:这种方式最好吗?有没有办法改善它?

php http-referer

2
推荐指数
1
解决办法
2984
查看次数

PHP检查推荐网址是否为主页

我正在试图弄清楚如何检查我的内页之一的引荐网址是否是主页.如果主页总是www.mysite.com/index.php,这很容易,但当它只是www.mysite.com时会发生什么?

我知道我可以做到

$url = $_SERVER['HTTP_REFERER'];
$pos = strrpos($url, "/");
$page = substr($url, $pos+1, (strlen($url)-$pos+1));
if (substr_count($url, 'index')) echo 'from index ';
Run Code Online (Sandbox Code Playgroud)

但我的$ url变量中没有index.php.

php http-referer

2
推荐指数
1
解决办法
8135
查看次数

如何使用Selenium C#PhantomJSDriver设置http referer标头?

在C#控制台应用程序中使用Selenium C#PhantomJSDriver时,如何设置http referer标头?

我正在使用PhantomJSDriver和我无法控制的代理.

PhantomJSDriverService service = PhantomJSDriverService.CreateDefaultService();
service.AddArgument("--proxy=123.456.78.910:80");
service.AddArgument("--proxy-auth=myproxyuid:myproxypwd");
IWebDriver driver = new PhantomJSDriver(service);
driver.Navigate().GoToUrl("http://www.testsite.com/product/123/");
Run Code Online (Sandbox Code Playgroud)

但是,正在测试的Web应用程序会对请求中的HTTP Referer值执行验证.

我可以使用什么方法在PhantomJSDriver请求中注入HTTP Referer?

c# http-referer proxy selenium phantomjs

2
推荐指数
1
解决办法
2286
查看次数

仅允许来自特定引用者的用户(重定向其余的) - HTACCESS

我一直试图阻止所有试图查看.php页面的人访问,而不是来自我的特定跟踪链接.

我希望如果他们不是来自我的链接,他们会被重定向到另一个网站.我尝试使用.htaccess方法如下:

    RewriteEngine On
RewriteBase /

# allow these referers to passthrough
RewriteCond %{HTTP_REFERER} ^http://subdomain.domain.com
RewriteRule ^ - [L]

# redirect everything else
RewriteRule ^ http://anotherDomain.com/ [R,L]
Run Code Online (Sandbox Code Playgroud)

这是因为http://subdomain.domain.com是一个重定向到website.php的跟踪网址,但它似乎无法正常工作,尽管有任何推荐人,甚至直接在工具栏中输入网站的.dp的网址是用户到website.php.

我想要实现的是,只有来自subdomain.domain.com的用户才能看到website.php

提前致谢.

apache .htaccess http-referer referrer url-redirection

2
推荐指数
1
解决办法
6729
查看次数