Project

General

Profile

プラグイン LaunchBrowser を使ってファイルをダウンロードさせたいが,ウエッブサーバのドキュメント外に置かれたファイルをダウンロードさせることは可能か?

技術ノート
07/15/2010

[番号]
技術ノート KGTN 2010071501

[現象]
プラグイン LaunchBrowser を使ってファイルをダウンロードさせたいが,ウエッブサーバのドキュメント外に置かれたファイルをダウンロードさせることは可能か?

[説明]
CGI (スクリプト) を利用することで可能です.PHPのサンプルを以下に示します.

//
// Example:
// 1) http://localhost/gm_download.php?file=gg-explorer.exe
// 2) http://localhost/gm_download.php?file=12345.dat
//
$fileDir = "C:¥¥GraphOn¥¥BIN¥¥";
$fileName = $_GET["file"];
//-
//- $fileNameA is "actual file name"
//-
$fileNameA = "XXX.EXE"; // $fileName;
//-
$filePath = $fileDir . $fileName;
if((file_exists($filePath) != TRUE)||(is_dir($filePath) == TRUE)) {
exit("File not found! - ¥"" . $fileName . "¥"");
}
$fileLength = filesize($filePath);
header("Content-Disposition: attachment; filename=$fileNameA");
header("Content-Length:$fileLength");
header("Content-Type: application/octet-stream");
readfile($filePath);
?>

このサンプルでは,実体のファイル名とは異なるファイル名 (XXX.EXE) でダウンロードさせることも可能です.

Files

KGTN2010071501.pdf (54.5 KB) kitasp 技術センター, 07/15/2010 01:07 PM