我正在尝试编写“终极”反热链接 .htaccess ...
您可以在网上找到许多示例/教程/生成器,但其中许多是错误的或不完整的(甚至两者都有)。
这些是我正在寻找的功能:
这是我迄今为止取得的成就:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mydomain.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com/.*$ [NC]
RewriteRule \.(gif|jpe?g|png|zipx?)$ - [NC,F]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
我的问题:
mydomain.com在 .htaccess 中硬编码?(能够将此 .htaccess 部署到我的所有域中而无需为每个域都修改它会很棒。)gif|jpe?g|png|zipx?相当于gif|jpg|jpeg|png|zip|zipx对吗?(对不起,正则表达式还是新手。)对于#1,我知道这是有可能的。我找到的最接近的是这个片段,它从 URL 中删除了 …
我是一名开发人员,而不是系统管理员,但我的任务是维护一个文件,该文件基本上是要列入白名单的域列表。该文件用于 Squid 缓存代理。该文件的内容如下所示:
.example.com
.google.com
.bing.com
Run Code Online (Sandbox Code Playgroud)
该文件的使用方式如下:
acl whitelist dstdomain "/path/to/squid/whitelist.txt"
Run Code Online (Sandbox Code Playgroud)
现在我试图找到有关如何解析此文件的文档,但在网上找不到有关如何填充此文件的明确(官方)说明。
域名前面的点似乎会将域名及其所有子域名列入白名单。我正在尝试查找是否有其他可以应用的通配符规则(例如 google.* 或类似的东西)。
我想了解它是如何工作的,而不是盲目地遵循我们过去如何使用它。