1

アンカー タグを介してユーザーに .pdf ドキュメントを提供しています。ただし、アンカー タグを介して完全なドキュメント パスを提供すると、サーバーのディレクトリ構造が公開されます。サンプルのドキュメントの場所は次のとおりです: mydomain.com/_webstuff/docs/proj03/sub01/111.pdf

「proj03/sub01/111.pdf」部分を受け入れ、上記の完全な URI にリダイレクトする .htaccess を作成しようとしています。

その場合、HTML は次のようになります。

View <a href="proj03/sub01/111.pdf">111.pdf</a>

これは、動作していない htaccess です。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /fetch.php?f=$1

FETCH.PHP は次のようになります。

<?php
$f = $_GET['f'];
echo '<meta HTTP-EQUIV="REFRESH" content="0; url=_webstuff/docs/' . $f . '">';

これを行うにはもっと良い方法があると確信しています。

編集:MEAカルパ。私のエラーは次のとおりです。次のように、FETCH.PHP の URL の前にスラッシュを追加する必要がありました。

新しいFETCH.PHP

<?php
$f = $_GET['f'];
echo '<meta HTTP-EQUIV="REFRESH" content="0; url=/_webstuff/docs/' . $f . '">';

しかし...ドキュメントのアドレスバーに実際のドキュメントパスが表示されるため、私のデザインはまだ間違っています。つまり、.pdf ドキュメントがブラウザ ウィンドウに表示されると、完全修飾 URI が表示されます。私は半ば頭が良すぎる。以前のコメントに戻ります。「これを行うにはもっと良い方法があるはずです。」

提案?

4

3 に答える 3