1. 程式人生 > >配置server禁止全部非法域名 訪問自己的server

配置server禁止全部非法域名 訪問自己的server

roo index.php server director set .com family htm multipl

1、Apache2.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、Apache2.4.1 以後:

apache2.4.1 以後不再須要NameVirtualHost以及不再支持ServerName * 這樣的寫法。

使用ServerName * 會報Invalid ServerName “*” use ServerAlias to set multiple server names.

第一種:直接拒絕

打開 httpd.conf 在文件末尾加上一下代碼:

#禁止全部非法域名
<VirtualHost *:80>
	ServerName serverip
	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 serverip
	ServerAlias *
	<Location /alidata/www>
		Order Allow,Deny
		Allow from all
	</Location>
</VirtualHost>
#同意訪問的域名
<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>




配置server禁止全部非法域名 訪問自己的server