只是想知道这是否可行。
当我通过浏览器调用http://localhost/TEST/folder_validation/1.pdf
时,validate.php应该在更新'log.txt'之前运行并将用户重定向到不同的URL。
下面的当前解决方案无效。
有可能吗?如果是这样,我该怎么做?
由于
文件夹结构:
folder_validation/1.pdf
folder_validation/2.pdf
folder_validation/log.txt
folder_validation/validate.php
folder_validation/.htaccess
folder_validation/..............
validate.php文件的内容:(不会更新日志文件)
$file = 'log.txt';
$current = file_get_contents($file);
$current .= $_GET['filename'] . "\n";
file_put_contents($file, $current);
header('Location: http://stackoverflow.com/');
exit;
.htaccess文件的内容:(如下面建议的答案)
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(pdf)$ [NC]
RewriteRule ^(.*)$ /validate.php?filename=$1 [L]
答案 0 :(得分:2)
尝试
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(pdf)$ [NC]
RewriteRule ^(.*)$ /validate.php?filename=$1 [L]
在validate.php中,您可以在get参数文件名中获取所请求的文件名。
答案 1 :(得分:0)
1→创建.htaccess文件(保存文件时将其写入双引号内,如“.htaccess”)。
2→
RewriteEngine On
RewriteRule (.+\.pdf)$ /folder/validate.php?file=$1