fairyguo 发表于 2018-11-20 13:26:06

Apache禁止用IP非法域名访问网站

1、Apache2.4.1以前:
第一种 直接拒绝访问
  打开 httpd.conf文件,将一下配置追加到文件最后。
   view plaincopy

[*]  #直接拒绝所有非法域名
[*]  NameVirutalHost *:80
[*]  
[*]  ServerName *
[*]  ServerAlias *
[*]  
[*]  Order Allow,Deny
[*]  Deny from all
[*]  
[*]  ErrorLog "/alidata/log/httpd/error.log"
[*]  CustomLog "/alidata/log/httpd/info.log" common
[*]  
   view plaincopy

[*]  #允许的域名
[*]  
[*]  DocumentRoot /alidata/www
[*]  ServerName www.你的域名
[*]  ServerAlias www.你的域名
[*]  
[*]  Options Indexes FollowSymLinks
[*]  AllowOverride all
[*]  Order allow,deny
[*]  Allow from all
[*]  
[*]  
[*]  RewriteEngine On
[*]  RewriteRule ^(.*)-htm-(.*)$ .php?
[*]  RewriteRule ^(.*)/simple/(+\.html)$ /simple/index.php?
[*]  
[*]  ErrorLog "/alidata/log/httpd/error.log"
[*]  CustomLog "/alidata/log/httpd/info.log" common
[*]  
  重启apache服务:service httpd restart
第二种 跳转到指定目录或文件
  打开 httpd.conf文件,将一下配置追加到文件最后。
   view plaincopy

[*]  #所有非法域名跳转到指定目录或文件
[*]  
[*]  #指定目录或文件
[*]  DocumentRoot "/yun/www"
[*]  ServerName *
[*]  ServerAlias *
[*]  
   view plaincopy

[*]  #允许的域名
[*]  
[*]  DocumentRoot /alidata/www
[*]  ServerName www.你的域名
[*]  ServerAlias www.你的域名
[*]  
[*]  Options Indexes FollowSymLinks
[*]  AllowOverride all
[*]  Order allow,deny
[*]  Allow from all
[*]  
[*]  
[*]  RewriteEngine On
[*]  RewriteRule ^(.*)-htm-(.*)$ .php?
[*]  RewriteRule ^(.*)/simple/(+\.html)$ /simple/index.php?
[*]  
[*]  #错误日志
[*]  ErrorLog "/alidata/log/httpd/error.log"
[*]  CustomLog "/alidata/log/httpd/info.log" common
[*]  
重启apache服务:service httpd restart
第三种:配置单个域名拒绝或跳转(不建议使用)
   view plaincopy

[*]  # 拒绝单个域名 (若要拒绝多个 需要配置多个VirtualHost)
[*]  
[*]  ServerName www.拒绝的域名
[*]  ServerAlias www.拒绝的域名
[*]  
[*]  Order Allow,Deny
[*]  Deny from all
[*]  
[*]  
2、Apache2.4.1 以后:
  apache2.4.1 以后不再需要NameVirtualHost以及不再支持ServerName * 这种写法。使用ServerName * 会报Invalid ServerName “*” use ServerAlias to set multiple server names.
第一种:直接拒绝
  打开 httpd.conf在文件末尾加上一下代码:
   view plaincopy

[*]  #禁止所有非法域名
[*]  
[*]  ServerName 服务器ip
[*]  ServerAlias *
[*]  
[*]  Order Allow,Deny
[*]  Deny from all
[*]  
[*]  
   view plaincopy

[*]  #允许访问的域名
[*]  
[*]  DocumentRoot /alidata/www
[*]  ServerName www.你的域名
[*]  ServerAlias www.你的域名
[*]  
[*]  Options Indexes FollowSymLinks
[*]  AllowOverride all
[*]  Order allow,deny
[*]  Allow from all
[*]  
[*]  
[*]  RewriteEngine On
[*]  RewriteRule ^(.*)-htm-(.*)$ .php?
[*]  RewriteRule ^(.*)/simple/(+\.html)$ /simple/index.php?
[*]  
[*]  #错误日志保存位置
[*]  ErrorLog "/alidata/log/httpd/error.log"
[*]  CustomLog "/alidata/log/httpd/info.log" common
[*]  
  重启apache服务:service httpd restart
第二种:跳转到指定目录或文件
  打开 httpd.conf在文件末尾加上一下代码:
   view plaincopy

[*]  #禁止所有非法域名
[*]  
[*]  DocumentRoot "/alidata/www"
[*]  ServerName 服务器ip
[*]  ServerAlias *
[*]  
[*]  Order Allow,Deny
[*]  Allow from all
[*]  
[*]  
   view plaincopy

[*]  #允许访问的域名
[*]  
[*]  DocumentRoot /alidata/www
[*]  ServerName www.你的域名
[*]  ServerAlias www.你的域名
[*]  
[*]  Options Indexes FollowSymLinks
[*]  AllowOverride all
[*]  Order allow,deny
[*]  Allow from all
[*]  
[*]  
[*]  RewriteEngine On
[*]  RewriteRule ^(.*)-htm-(.*)$ .php?
[*]  RewriteRule ^(.*)/simple/(+\.html)$ /simple/index.php?
[*]  
[*]  #错误日志保存位置
[*]  ErrorLog "/alidata/log/httpd/error.log"
[*]  CustomLog "/alidata/log/httpd/info.log" common
[*]  
  重启apache服务:service httpd restart
第三种:配置单个域名拒绝或跳转(不建议使用)
   view plaincopy

[*]  # 拒绝单个域名 (若要拒绝多个 需要配置多个VirtualHost)
[*]  
[*]  ServerName www.game673.com
[*]  ServerAlias www.game673.com
[*]  
[*]  Order Allow,Deny
[*]  Deny from all
[*]  
[*]  
[*]


页: [1]
查看完整版本: Apache禁止用IP非法域名访问网站