我发现$_SERVER下的好多变量都没有了,如: $_SERVER['HTTP_ACCEPT_LANGUAGE'] $_SERVER['HTTP_REFERER'] $_SERVER['SERVER_NAME'] 等。 在使用apache反向代理后,$request->host()也只返回:127.0.0.1:8787这样的数据 这些要怎么破?
$_SERVER 变量大部分是http头里的数据吧,貌似$_SERVER里以HTTP_开头的都可以从http头里获取的,webman应该是使用$request->header('xx');获取对应的http头。 比如 $_SERVER['HTTP_ACCEPT_LANGUAGE'] 使用 $request->header('accept-language'); 获取。 如果找不到就 var_dump($request->header()); 把所有header打印出来找下。
$_SERVER
HTTP_
$_SERVER['HTTP_ACCEPT_LANGUAGE']
$request->header('accept-language');
var_dump($request->header());
nginx反向代理 使用 proxy_set_header Host $host; 能获取真实的http头中的host,apache估计也有类似的配置透传host,不过我不知道是哪个,我都用nginx
proxy_set_header Host $host;
$request->header();
$_SERVER
变量大部分是http头里的数据吧,貌似$_SERVER
里以HTTP_
开头的都可以从http头里获取的,webman应该是使用$request->header('xx');获取对应的http头。比如
$_SERVER['HTTP_ACCEPT_LANGUAGE']
使用$request->header('accept-language');
获取。如果找不到就
var_dump($request->header());
把所有header打印出来找下。nginx反向代理 使用
proxy_set_header Host $host;
能获取真实的http头中的host,apache估计也有类似的配置透传host,不过我不知道是哪个,我都用nginx$request->header();