只允许域名访问
A. 如何配置nginx达到只允许域名访问网址,禁止ip
Nginx 禁止IP访问
我们在使用的时候会遇到很多的恶意IP攻击,这个时候就要用到Nginx 禁止IP访问了。下面我们就先看看Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效最关键的一点是,在server的设置里面添加这一行:
listen 80 default;
后面的default参数表示这个是默认虚拟主机。
Nginx 禁止IP访问这个设置非常有用。
比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。就可以这样设置:
server {
listen 80 default;
return 500;
}
B. IIS7如何设置仅通过域名访问网站,禁止通过服务器IP地址访问网站
首先就是打开IIS管理器之后,在IIS管理器左侧找到网站下面的相应网站,右键选择打开该网站属性,进入相关IIS网站属性设置。
(IIS打开网站属性方法)在网站属性窗口中的默认“网站”选项卡中找到并单击“高级”,如下图所示。
(IIS打开网站高级网站标识)在高级网站标识中,一般默认主机头值是空的。如果想让别人直接输入IP地址访问网站的话,就不管它,保护是空的样子。如果不想让别人直接输入IP就访问网站的话,需要选择中网站中的标识并单击编辑,在添加/编辑网站标识窗口中设置相应端口号和网站主机头值。
(IIS网站高级网络站标识设置)编者注:IIS的网站主机头值,就是解析的域名。一般来说都是我们域名。以下是网站标识直接是空,也就是说没有设置主机头值。就可以直接输入IP地址即可访问服务器中的网站。
(使用IP地址访问服务器网站)以上是已经编辑过的主机头,也就是说把原来默认为空的主机值值改了,就会出现无法使用IP地方访问的情况。一般直接输入IP地址时服务器返回"Bad Request(Invalid Hostname)"的提示。就已经达到了禁止使用IP地址来访问服务器网站的目录了。
C. Apache只允许域名访问https的问题
SSL证书是根据域名签发的信任的,如果IP没有证书所以才会这样,但配置可以指定域名访问。
<VirtualHost 域名:443>
ServerName 域名
ServerAlias 域名
DocumentRoot /var/www/html
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCertificateFile /etc/ssl/server.crt
SSLCertificateKeyFile /etc/ssl/server.key
SSLCertificateChainFile /etc/ssl/server.ca-bundle
</VirtualHost>
D. 如何设置只允许访问指定网站
如果你允许别人访问的网页数量少的话,给你个方法:
1、把本地连接的dns修改成错误的ip地址,这样所有网站就不能访问了
2、记事本打开windows\system32\drivers\etc下的hosts文件,设置你允许访问的网站域名。
这样就只能访问你指定的网站了
E. 如何设置在IIS中只允许使用域名通过SSL加密访问
IIS强制使用SSL加密访问只要方法有2个。
一、强制SSL访问:是指用户输入域名后自动跳转到HTTPS,操作步骤:网页链接
二、服务器存在IP或者域名,必须要求域名访问SSL,这种情况下需要IIS配置SSL证书绑定这个域名。可以参考IIS6文档:网页链接、IIS7文档:网页链接。
如果是IIS8以上服务器可以直接绑定:
F. apache如何绑定域名,只允许该域名访问服务器
我以前也有这个问题,原因大概是这样,apache接收所有指向的域名,当配置中没有被访问的域名时,它会默认跳到配置的第一个虚拟主机中去,于是我就在第一个虚拟主机那配了个404页面,或者给他把地址重写一下,跳到什么的。也不知道这样能不能混过网监那关。
G. 请问如何设置apache 主机头,只允许指定域名访问,禁止IP访问
1.为了防止域名解析恶意指向,我们需要禁止apache默认的空主机头,操作如下:vi /etc/httpd/conf/httpd.conf编辑配置文件,在你的站点配置之前再增加一个站点(红色字体部分是我们要增加的,蓝色字体部分代表你正在使用的站点配置)NameVirtualHost *ServerAdmin [email protected] /errorServerName abc.comServerAdmin [email protected] 你的站点路径ServerName yourWebsite.comServerAlias *.yourWebsite.com2.在httpd.conf 里面找不到像上面的NAMEVistualHost的话,就是他刚开始安装的时候就已经已经输入域名那些了,进入apache安装目录 编辑conf目录下的httpd.conf文件: 找到 # Virtual hosts #Include conf/extra/httpd-vhosts.conf 把Include conf/extra/httpd-vhosts.conf前面的#去掉,进入conf\extra\目录 编辑httpd-vhosts.conf文件加入NameVirtualHost *ServerAdmin [email protected] /errorServerName itmop.comServerAdmin [email protected] DocumentRoot D:/EmpireServer/web ServerName itmop.com ServerAlias
H. 怎么设置只能访问域名打开网站,禁止通过IP访问网站
1、在大批量某一字段ip访问你网站之前,会在不该出现的时间段,出现很多各个地方的访问ip,而且时间还很接近。而且,访问同一个页面,没有任何来撸,只有ip和时间。
I. apache 如何配置 只能通过域名访问,不允许通过ip访问
apache设置禁止使用IP访问网站的实现方法
在用apache搭建的WEB服务器的时候,如何想只能通过设定的域名访问,而不能直接通过服务器的IP地址访问呢,有以下两种方法可以实现(当然肯定还会有其他方法可以实现),都是修改httpd.conf文件来实现的,下面举例说明。
方法一:在httpd.conf文件最后面,加入以下代码
NameVirtualHost 127.*.*.*
<VirtualHost 127.*.*.*>
ServerName 127.*.*.*
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>
<VirtualHost 127.*.*.*>
DocumentRoot "/www/web"
ServerName www.phpzixue.cn
</VirtualHost>
说明:加粗部分是实现拒绝直接通过221.*.*.*这个IP的任何访问请求,这时如果你用221.*.*.*访问,会提示拒绝访问。剩余部分就是允许通过www.phpzixue.cn这个域名访问,主目录指向/www/web(这里假设你的网站的根目录是/www/web)
方法二:在httpd.conf文件最后面,加入以下代码
NameVirtualHost 127.*.*.*
<VirtualHost 127.*.*.*>
DocumentRoot "/www/test"
ServerName 127.*.*.*
</VirtualHost>
<VirtualHost 127.*.*.*>
DocumentRoot 7/www/web"
ServerName www.phpzixue.cn
</VirtualHost>
说明:加粗部分是把通过127.*.*.*这个IP直接访问的请求指向/www/test目录下,这可以是个空目录,也可以在里面建一个首页文件,如index.hmtl,首面文件内容可以是一个声明,说明不能通过IP直接访问。剩余部分的意思跟方法一是一样的。
注:修改后需要重启apache