【发布时间】:2022-01-07 07:17:56
【问题描述】:
我正在尝试将自定义值覆盖到 HTTP REFERRER。我使用 javascript 取得了成功,但我的客户想要使用 PHP,我需要帮助将 Javascript 重写为 PHP。
JS 代码:
var reff = ["http://example.com", "http://example.net", "http://example.org"];
var randomreff = reff[Math.floor(Math.random() * reff.length)];
delete window.document.referrer;
window.document.__defineGetter__("referrer", function () {
return randomreff;
});
document.write(document.referrer);
我正在尝试用 PHP 重写此代码,或者可能会使用 PHP 找到类似的解决方案。我在 PHP 中尝试了多种方法。这些是一些例子。
PHP 尝试 1:
$reff = new Arr("http://example.com", "http://example.net", "http://example.org");
$randomreff = get($reff, call_method($Math, "floor", to_number(call_method($Math, "random")) * to_number(get($reff, "length"))));
_delete(get($window, "document"), "referrer");
call_method(get($window, "document"), "__defineGetter__", "referrer", new Func(function() use (&$randomreff) {
return $randomreff;
}));
带变量的 PHP :
$var = 'var reff = ["http://example.com", "http://example.net", "http://example.org"];
var randomreff = reff[Math.floor(Math.random() * reff.length)];
delete window.document.referrer;
window.document.__defineGetter__("referrer", function () {
return randomreff;
});
';
带有标头引用的 PHP :
header("Referer: https://www.example.com/");
他们都没有工作。帮助我用 PHP 重写 Javascript 代码或替代解决方案。
【问题讨论】:
-
客户端上的 PHP 或服务器上的 JS 在 PHP 进程中如何工作?我希望只有标题才能工作
-
@mplungjan 我知道 PHP 是服务器端,但我在 google 上找到了。也可以使用 PHP 将自定义值传递给 HTTP Referer,但我没有得到有效的解决方案
-
@freedomn-m 使用
$refer = "http://example.com"不会更改 HTTP REFERER 请求。 -
@freedomn-m 为某些附属和广告目的更改推荐人
标签: javascript php html jquery http-referer