我正在通過定位標記向用戶提供.pdf文檔。但是,通過錨標籤提供完整文檔路徑會暴露服務器目錄結構。下面是一個示例文檔的位置: mydomain.com/_webstuff/docs/proj03/sub01/111.pdf使用.htaccess在提供文件時隱藏目錄結構
我試圖創建接受了「proj03/SUB01/111.pdf」部分一個.htaccess,和重定向到上面的完整URI。
的HTML的話,應該是這樣的:
View <a href="proj03/sub01/111.pdf">111.pdf</a>
這是unworking 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 CULPA。我的錯誤是這樣的:我在FETCH.PHP網址前加斜槓,具體如下:
新FETCH.PHP
<?php
$f = $_GET['f'];
echo '<meta HTTP-EQUIV="REFRESH" content="0; url=/_webstuff/docs/' . $f . '">';
無論其...我的設計仍然是錯誤的,因爲文檔顯示地址欄中的真實文檔路徑。也就是說,當瀏覽器窗口中顯示.pdf文檔時,所有人都可以看到完全限定的URI。我太聰明瞭一半。回到我之前的評論:「我確定有更好的方法來做到這一點。」
建議?
這是使用.htaccess的首選方法,它允許您使用任何所需的URL結構,然後在服務器上無縫重寫。 –
這真是太棒了。謝謝。 – gibberish