以下代码可以正常使用:
RewriteCond %{HTTP_REFERER} !^http://superwebx.com/.*$ [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png|swf|css)$ - [F]
但是我想制作一个通用脚本为我管理的几个网站提供服务,但未能尝试获取
RewriteCond %{HTTP_REFERER} !^http://%{HTTP_HOST}/.*$ [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png|swf|css)$ - [F]
答案 0 :(得分:0)
你不能在正则表达式中使用变量。您可以使用如下的RegEx反向引用来解决此问题:
RewriteCond %{HTTP_REFERER} ^https?://([^/]+)/ [NC]
RewriteCond %1#%{HTTP_HOST} !^(.+)#\1$
RewriteRule \.(jpe?g|gif|bmp|png|swf|css)$ - [F]
(注意#
仅用作边界。它可以是域名中未使用的任何字符。)
答案 1 :(得分:0)
很老,但这是你的答案:
RewriteCond %{HTTP_HOST}@@%{HTTP_REFERER} !^([^@]*)@@https?://\1/.*