.htaccess “重写映射”无法阻止热链接
我试图通过在txt文件中动态重写映射来防止图像的热链接和添加允许的主机,但不幸的是,这种情况不起作用 下面是VirtualHost的代码.htaccess “重写映射”无法阻止热链接,.htaccess,mod-rewrite,hotlinking,rewritemap,.htaccess,Mod Rewrite,Hotlinking,Rewritemap,我试图通过在txt文件中动态重写映射来防止图像的热链接和添加允许的主机,但不幸的是,这种情况不起作用 下面是VirtualHost的代码 <VirtualHost *:80> DocumentRoot D:\XAMPP\htdocs\test\base ServerName base.test.dev RewriteEngine On RewriteMap allowedhosts "txt:D:\XAMPP\htdocs\test\base/rule
<VirtualHost *:80>
DocumentRoot D:\XAMPP\htdocs\test\base
ServerName base.test.dev
RewriteEngine On
RewriteMap allowedhosts "txt:D:\XAMPP\htdocs\test\base/rules.txt"
</VirtualHost>
下面是主机允许访问图像的txt文件行
http(s)?://(www\.)?base.test.dev
请有人帮帮我
谢谢。来自
txt
包含空格分隔的键值对的纯文本文件,每行一个
问题似乎是关键部分,即捕获的图像类型,例如gif | jpg | jpeg | bmp | png
之一
您可以将referer作为键,并为未知/无效主机使用默认值
RewriteCond ${allowedhosts:%{HTTP_REFERER}|NOT_ALLOWED} NOT_ALLOWED
RewriteRule \.(?:gif|jpg|jpeg|bmp|png)$ - [F]
这将如下所示:在地图中查找HTTP\u REFERER
。如果在映射中找不到,则返回默认值not_ALLOWED
,条件为true。在这种情况下,将返回禁止的403
。来自
txt
包含空格分隔的键值对的纯文本文件,每行一个
问题似乎是关键部分,即捕获的图像类型,例如gif | jpg | jpeg | bmp | png
之一
您可以将referer作为键,并为未知/无效主机使用默认值
RewriteCond ${allowedhosts:%{HTTP_REFERER}|NOT_ALLOWED} NOT_ALLOWED
RewriteRule \.(?:gif|jpg|jpeg|bmp|png)$ - [F]
这将如下所示:在地图中查找
HTTP\u REFERER
。如果在映射中找不到,则返回默认值not_ALLOWED
,条件为true。在这种情况下,将返回一个403禁止的。它正在为每个主机阻止图像它正在为每个主机阻止图像感谢您的回复,没有映射文件的解决方案工作正常,但我需要有映射文件的解决方案,因为有数百个主机,我需要动态构建该文件,这就是为什么我将它与htaccess文件分开。我已经尝试了映射文件的键值解决方案,但它不起作用。好的,但一个键不能有多个主机(gif、jpg等)。感谢您的回复,没有映射文件的解决方案工作正常,但我需要有映射文件的解决方案,因为有数百个主机,我需要动态构建该文件,这就是为什么我将它与htaccess文件分开。我已经尝试了映射文件的键值解决方案,但它不起作用。好的,但是一个键不能有多个主机(gif、jpg等)。