一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

简单办法解决Drupal无法正确获取到ip地址的问题

时间:2014-12-03 编辑:简简单单 来源:一聚教程网

/**
* 反向代理配置:
* 反向代理服务器经常用于增强大负载网站的性能,同时提供额外的站点缓存、安全等好处。
* 如果Drupal部署反向代理服务器之后,Drupal的日志、统计以及访问控制系统都需要获取真实的用户IP。
* 通常反向代理服务器会在请求中添加X-Forwarded-For头,用于传递客户IP地址。
* 然而,HTTP头对于客户端欺诈来说是很脆弱的,有些客户端能够直接生成这个Header信息。
* 所以,Drupal需要在$conf['reverse_proxy_address']中设置所有的代理服务器地址。
*
* 激活这个设置让Drupal可以从X-Forwarded-For头中获取用户的IP地址。
* 这个Header的名字也可以通过$conf['reverse_proxy_header']修改为其他名称。
* 如果你不确定是否使用了反向代理,不知道这个选项的含义,或者站点托管在共享主机上,就不必设置。
*
* 启用这个配置,就必须把每个反向代理服务器的地址都保存在$conf['reverse_proxy_addresses']中。
* 如果你的环境中无法获取一个完整的反向代理服务器列表(例如CDN)。可以在settings.php中直接设置$_SERVER['REMOTE_ADDR']。
* 这意味着可能发生IP伪造。
*/

 代码如下 复制代码

$conf['reverse_proxy'] = TRUE;



/**
* 如果$conf['reverse_proxy']设置为TRUE,这里必须列出所有的代理服务器
*/

 代码如下 复制代码
$conf['reverse_proxy_addresses'] = array('a.b.c.d', ...);




如果有朋友跟我一样碰到这样的问题,不妨先如此设置一番,看看能否解决问题.

热门栏目