web-dev-qa-db-ja.com

マークダウン構文を使用してローカルファイルにどのようにリンクしますか?

複数のリンクを含むローカルマークダウンファイルがあり、そのリンクがpdfのようなローカルファイルに向かうようにします。

次の構文を使用します。

[my link](file:///C:/my_file.pdf)

しかし、マークダウンファイルをFirefoxページに開いてリンクをクリックしても、何も起こりません。

私は正確に何を見逃しましたか?ローカルファイルを開くことは可能ですか?

50

レンダリングされたマークダウンをどのように開きますか?

HTTP経由でホストする場合、つまりhttp://またはhttps://経由でアクセスする場合、最新のブラウザのほとんどはローカルリンクを開くことを拒否します。 file://で。これは セキュリティ機能 です:

セキュリティのため、Mozillaアプリケーションは、リモートファイルからローカルファイル(およびディレクトリ)へのリンクをブロックします。これには、ハードドライブ、マップされたネットワークドライブ、および niform Naming Convention (UNC)パスを介してアクセス可能なファイルへのリンクが含まれます。これはを防止します

  • デフォルトのインストールパスをチェックして、サイトがオペレーティングシステムを検出できるようにする
  • サイトがシステムの脆弱性を悪用できるようにする(例:Windows 95/98のC:\con\con
  • サイトがブラウザーの設定を検出したり、機密データを読み取ったりできるようにする

そのページにはいくつかの回避策がリストされていますが、可能であればこれを避けることをお勧めします。

21
Chris

答えはどれも私にとってうまくいきませんでした。しかし、BarryPyeの答えに触発されて、相対パスを使用するときに機能することがわかりました!

# Contents from the '/media/user/README_1.md' markdown file:

Read more [here](./README_2.md) # It works!
Read more [here](file:///media/user/README_2.md) # Doesn't work
Read more [here](/media/user/README_2.md) # Doesn't work
35

ローカル画像にリンクするのと同じ方法で、ローカルファイルにリンクします。マークダウンソースと同じディレクトリにあるstart_caQtDM_7id.shファイルにリンクする例を次に示します。

![start_caQtDM_7id.sh](./start_caQtDM_7id.sh) 
12
BarryPye