シンボリックリンクに目玉を付けることはできますか?
あるディレクトリからファイルをダウンロードしようとしていますが、ファイルは実際には別のディレクトリに存在します。
実際のファイルと別のサブディレクトリにあるシンボリック リンクを取得しましたが、どちらもパブリック html に存在します (どちらも Web アクセス可能です)。
ファイルに直接アクセスして、(共有 Linux) サーバー上のファイルとファイルの場所を確認しました。
リンクが作成されており (readlink、is_link、および linkinfo を使用しました)、FTP で接続すると表示されます。
おそらくディレクトリ構造を誤解しているだけだと思います。
ここにファイルを置きます: ./testdownload/
ここにシンボリックリンクを置きます: ./testDelivery/
<?php
$fileName = "testfiledownload.zip";//Name of File
$fileRepository = "./testdownload/";//Where the actual file lives
$downloadDirectory = "./testDelivery/";//Where the symlink lives
unlink($downloadDirectory . $fileName); // Deletes any previously exsisting symlink (required)
symlink($fileRepository . $fileName, $downloadDirectory . $fileName);
$checkLink = ($downloadDirectory . $fileName);
if (is_link($checkLink))
{
echo ("<br>Symlink reads: " .readlink($checkLink) . "<br>");
echo ("<br>LinkeInfo reads: " . linkinfo($checkLink));
}
?>
<p><a href="<?php echo ("/testDelivery/" . $fileName); ?>"</a>SymLink</p>
<p><a href="<?php echo ("/testdownload/" . $fileName); ?>"</a>regular link</p>
私にはすべてが正しいように見えます....しかし、リンクは機能しません。ヘルプ?
最終的には、ソース データを公開領域の外に置きます...これはテスト用です。
(接続不良で失敗する fread をチャンクアウトするよりも、ダウンロードのためのより良い解決策を見つけようとしています。(200-400MB ファイル))