首页 > 代码库 > 配置 Apache 服务器禁止所有非法域名 访问自己的服务器
配置 Apache 服务器禁止所有非法域名 访问自己的服务器
1、http2.4.1以前:
第一种 直接拒绝访问
打开 httpd.conf 文件,将一下配置追加到文件最后。
#直接拒绝所有非法域名 <VirtualHost *:80> ServerName * ServerAlias * <Location /> Order Allow,Deny Deny from all </Location> ErrorLog "/alidata/log/httpd/error.log" CustomLog "/alidata/log/httpd/info.log" common </VirtualHost>
#允许的域名 <VirtualHost *:80> DocumentRoot /alidata/www ServerName www.你的域名 ServerAlias www.你的域名 <Directory "/alidata/www"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)-htm-(.*)$ .php? RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ /simple/index.php? </IfModule> ErrorLog "/alidata/log/httpd/error.log" CustomLog "/alidata/log/httpd/info.log" common </VirtualHost>
重启apache服务:service httpd restart
第二种 跳转到指定目录或文件
打开 httpd.conf 文件,将一下配置追加到文件最后。
#所有非法域名跳转到指定目录或文件 <VirtualHost *:80> #指定目录或文件 DocumentRoot "/yun/www" ServerName * ServerAlias * </VirtualHost>
#允许的域名 <VirtualHost *:80> DocumentRoot /alidata/www ServerName www.你的域名 ServerAlias www.你的域名 <Directory "/alidata/www"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)-htm-(.*)$ .php? RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ /simple/index.php? </IfModule> #错误日志 ErrorLog "/alidata/log/httpd/error.log" CustomLog "/alidata/log/httpd/info.log" common </VirtualHost>
重启apache服务:service httpd restart
第三种:配置单个域名拒绝或跳转(不建议使用)
# 拒绝单个域名 (若要拒绝多个 需要配置多个VirtualHost) <VirtualHost *:80> ServerName www.拒绝的域名 ServerAlias www.拒绝的域名 <Location /> Order Allow,Deny Deny from all </Location> </VirtualHost>
2、http2.4.1 以后:
http2.4.1 以后不再需要NameVirtualHost以及不再支持ServerName * 这种写法。使用ServerName * 会报Invalid ServerName “*” use ServerAlias to set multiple server names.
第一种:直接拒绝
打开 httpd.conf 在文件末尾加上一下代码:
#禁止所有非法域名 <VirtualHost *:80> ServerName 服务器ip ServerAlias * <Location /> Order Allow,Deny Deny from all </Location> </VirtualHost>
#允许访问的域名 <VirtualHost *:80> DocumentRoot /alidata/www ServerName www.你的域名 ServerAlias www.你的域名 <Directory "/alidata/www"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)-htm-(.*)$ .php? RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ /simple/index.php? </IfModule> #错误日志保存位置 ErrorLog "/alidata/log/httpd/error.log" CustomLog "/alidata/log/httpd/info.log" common </VirtualHost>
重启apache服务:service httpd restart
第二种:跳转到指定目录或文件
打开 httpd.conf 在文件末尾加上一下代码:
#禁止所有非法域名 <VirtualHost *:80> DocumentRoot "/alidata/www" ServerName 服务器ip ServerAlias * <Location /alidata/www> Order Allow,Deny Allow from all </Location> </VirtualHost>
<span style="font-family: Arial, Helvetica, sans-serif;"></span>
#允许访问的域名 <VirtualHost *:80> DocumentRoot /alidata/www ServerName www.你的域名 ServerAlias www.<span style="font-family: Arial, Helvetica, sans-serif;">你的域名</span> <Directory "/alidata/www/fdt"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)-htm-(.*)$ .php? RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ /simple/index.php? </IfModule> #错误日志保存位置 ErrorLog "/alidata/log/httpd/error.log" CustomLog "/alidata/log/httpd/info.log" common </VirtualHost>
重启apache服务:service httpd restart
第三种:配置单个域名拒绝或跳转(不建议使用)
# 拒绝单个域名 (若要拒绝多个 需要配置多个VirtualHost) <VirtualHost *:80> ServerName www.game673.com ServerAlias www.game673.com <Location /> Order Allow,Deny Deny from all </Location> </VirtualHost>
配置 Apache 服务器禁止所有非法域名 访问自己的服务器
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。