request.getRemoteHost()为什么得到的不是机器名而是IP地址

fir01 发布于 2012/06/25 08:44
阅读 3K+
收藏 0

在网上搜到解决方案如下:

web服务器在server.xml查看一下connector中的enableLookups   
  说明如下:   

  如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址。

也不行,返回的不是ip地址,二是一串什么也不是的大写,不知道是不是由于我的域名指向一个花生壳动态域名的原因?

以下是问题补充:

@fir01:比如有一个网站,域名为:www.aaa.com 里面有一个连接,指向www.bbb.com(bbb.com是我自己的网站) 那么如何在bbb.com里面得到是www.aaa.com访问的? 我现在bbb是一个放在家里的网站,想设置只有aaa中可以访问,目前我再bbb中怎么也获取不到aaa的域名。 看了下firefox和谷歌中看了下提交的头信息,在refer倒是有访问者域名: Accept*/*Accept-Encoding gzip, deflate Accept-Language en-us,en;q=0.5 Cache-Control max-age=0Connectionkeep-alive Host ****.gicp.net:8080 Refere rhttp://www.***-ecigarette.com/ User-Agent Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1 (2012/06/25 09:43)
加载中
0
红薯
红薯
机器名在多数情况下是获取不到的
0
fir01
fir01

目前看似只能通过先 获取Referer域名,然后再通过域名去取www.aaa.com的ip了.

记得很多网站会设置自己图片禁止盗链,他们怎么搞的?原理应该类同吧。

0
fir01
fir01

一般防止盗链是这只apache

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !ouyy.com [NC]
RewriteCond %{HTTP_REFERER} !ouyy.cn [NC]
RewriteCond %{HTTP_REFERER} !9la.org [NC]
RewriteCond %{HTTP_REFERER} !msn.com [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !soso.com [NC]
RewriteCond %{HTTP_REFERER} !yahoo.com [NC]
RewriteCond %{HTTP_REFERER} !yahoo.com.cn [NC]
RewriteRule .*\.(gif|jpg)$ http://domain.com/no.png [R,NC,L]

返回顶部
顶部