Apache getHostByAddr用于.htaccess文件?
我遇到来自域为Apache getHostByAddr用于.htaccess文件?,apache,.htaccess,redirect,host,Apache,.htaccess,Redirect,Host,我遇到来自域为.kimsufi.com和的服务器的垃圾邮件问题。我曾经使用以下htaccess命令阻止它们: Deny from .SteepHost.Net Deny from .kimsufi.com 我不想阻止请求,而是想将它们重定向到IP地址的静态页面(例如,“access.html”说“请与管理员联系,…”),这可以通过以下命令工作: RewriteEngine On RewriteBase / RewriteCond %{REMOTE_ADDR} ###.###.75.51 Rew
.kimsufi.com
和的服务器的垃圾邮件问题。我曾经使用以下htaccess命令阻止它们:
Deny from .SteepHost.Net
Deny from .kimsufi.com
我不想阻止请求,而是想将它们重定向到IP地址的静态页面(例如,“access.html”说“请与管理员联系,…”),这可以通过以下命令工作:
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} ###.###.75.51
RewriteRule ^(.*)$ access.html
但是我如何使用用户的主机而不是IP地址呢?例如,我试过:
RewriteCond %{REMOTE_HOST} ^(.*)\.kimsufi\.com$ [NC,OR]
RewriteCond %{REMOTE_HOST} ^(.*)\.SteepHost\.Net$ [NC]
但是它不起作用,尝试用%{REMOTE\u HOST}替换%{REMOTE\u ADDR}。但这意味着要设置为On(或Double),这会降低您的站点速度。只需使用REMOTE\u HOST而不是REMOTE\u ADDR
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_HOST} ^.+\.EvilDomain\.com$
RewriteRule ^(.*)$ access.html
请参阅:尝试不需要子域,方法是使用:RewriteCond%{REMOTE\u HOST}^(.*\)?kimsufi\.com$[NC,或]