0

これが可能かどうかを知りたいだけです。

ブラウザ経由で呼び出すとhttp://localhost/TEST/folder_validation/1.pdf、「log.txt」を更新してユーザーを別の URL にリダイレクトする前に、validate.php を実行する必要があります。

以下の現在のソリューションは機能しません。

出来ますか?もしそうなら、どうすればいいですか?

ありがとう

フォルダ構造:

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]
4

2 に答える 2

2

試す

RewriteEngine On
RewriteCond %{REQUEST_URI} \.(pdf)$ [NC]
RewriteRule ^(.*)$ /validate.php?filename=$1 [L]

また、validate.php では、get パラメータ filename で要求されたファイル名を取得できます。

于 2013-11-14T14:27:24.670 に答える
0

1-> .htaccess ファイルを作成します (ファイルを保存するときは、「.htaccess」のように二重引用符で囲みます)。

2->

RewriteEngine On

RewriteRule (.+\.pdf)$ /folder/validate.php?file=$1
于 2013-11-14T14:36:41.890 に答える