实际上,我正在尝试在 .htaccess 中传递引用者。我想要做的是将引用值发送到 PHP 脚本,在该脚本中该值将保存到数据库中。在某些情况下(取决于引用者),图像应被阻止(热链接),而在某些其他情况下,图像应正常显示。但它不会工作:-(我当前的“尝试”如下所示(它只是为了测试,所以目前每个图像都会被处理):
RewriteCond %{REQUEST_URI} (.*)jpg$
RewriteCond %{ENV:verified} ^$
RewriteRule (.*)jpg$ /include/referrer.php?ref=%{REQUEST_FILENAME}&uri=%{REQUEST_URI}&query=%{QUERY_STRING}&env=%{ENV:verified} [E=verified:yes]
RewriteCond %{REQUEST_URI} (.*)jpg$
RewriteCond %{ENV:verified} ^yes$
RewriteRule ^(.*)$ %{REQUEST_FILENAME} [E=verified:no]
referrer.php 看起来像:
<?
log_img($_REQUEST['uri'].' - "'.$_REQUEST['env'].'"');
?>
问题是调用了referrer.php但是图片不会显示,这很明显,因为没有达到第二条规则。
我还尝试在referrer.php 中显示图像,例如:
<?
log_img($_REQUEST['uri'].' - "'.$_REQUEST['env'].'"');
$src = str_replace($_SERVER['DOCUMENT_ROOT'],'',$_REQUEST['ref']);
?>
<img src="<? echo $src ?>" />
但随后再次调用 .htaccess,我将陷入无限循环。
现在的问题是:我怎样才能访问第二条规则,或者我怎样才能实现我想做的事情。有没有办法做到这一点?
谢谢你的帮助,拉斯