apache防止域名指向
最佳回答
遇到这种情可以建一个默认的站点 (注意,要保证这个的站点在所有站点的最前面,可以通过ip直接访问此站)
<VirtualHost *:80>
ServerAdmin webmaster@localhost DocumentRoot /var/www
<Directory />
Options Indexes FollowSymLinks MultiViews AllowOverride None Order deny, deny from all #直接屏蔽所有人访问
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
最新回答共有5条回答
-
夲人出租
回复域名就是经过ip解析而形成的,也就是ip等价于域名,所以说,可以直接用ip访问。最主要的是ip是找到网站的唯一因素。
域名是为了方便我们记忆网站名称,相比ip来说,不用记一长串的数字,所以域名简单很多,但是不论是ip访问还是域名访问,都是这个网站,所以说不用域名用ip都是可以的。ip地址是唯一的所以说可以。
-
建站最低500起
回复因为是虚拟主机,主机上放置了N个网站,而每个网站绑定1个或以上域名,所以用域名访问主机可以解析到网站目录,但用IP的话服务器就不知道解析到哪个目录了!因为http请求里包含了域名信息,所以用域名访问,虚拟主机服务器会根据域名来返回网站,直接用IP访问因为没有域名信息所以服务器不知道要访问的是哪个网站目录,只有共享IP的虚拟主机或者VPS才有这情况,像有邦定独立IP功能或者独立主机的那些服务器就不会有这问题了 。如果就想用ip形式访问,可以手动设置Host头域信息。 java中以
org.apache.http.client.methods.HttpGet实现http请求为例,解决方法
-
匿名用户
回复因为http请求里包含了域名信息,所以用域名访问,虚拟主机服务器会根据域名来返回网站,直接用IP访问因为没有域名信息所以服务器不知道要访问的是哪个网站目录,只有共享IP的虚拟主机或者VPS才有这情况,像有邦定独立IP功能或者独立主机的那些服务器就不会有这问题了 。 如果就想用ip形式访问,可以手动设置Host头域信息。
-
游客
回复对于未配置的虚拟主机,请求的数据都会访问到404错误虚拟主机上来。
httpd.conf
<VirtualHost *:80>
ServerAdmin admin@admin.com
DocumentRoot /var/www/404
ServerName *
</VirtualHost>