file://プロトコル完全ガイド!ローカルファイルにアクセスする方法【使い方と注意点】

プログラミング・IT

Webサイトのリンクで、同僚から「\\server\folder\file.pdf を見てください」と言われたけど、そのままコピペしても開けない…

社内メールでフォルダのパスを共有したいけど、どうすればクリックで開けるようになるの?

HTMLファイルでローカル画像を表示したいけど、うまく表示されない…

これらの問題、すべて file:// プロトコル を正しく理解すれば解決できます!

この記事では、file:// プロトコルの基本から、実際の使い方、よくあるトラブルの対処法まで、初心者にも分かりやすく徹底解説します。


スポンサーリンク
  1. file:// プロトコルって何?
    1. 簡単に言うと
    2. もう少し詳しく
  2. file:// の基本的な書き方
    1. なぜスラッシュが3つ?(file:///)
    2. Windows でのファイルパス表記
    3. Mac / Linux でのファイルパス表記
  3. 実際の使い方
    1. ブラウザのアドレスバーで直接開く
    2. HTMLファイルでローカルファイルをリンク
    3. メールやチャットでフォルダを共有
  4. file:// プロトコルの便利な使い方
    1. 1. Webブラウザをファイルビューアーとして使う
    2. 2. ローカルWebサイト開発
    3. 3. 社内イントラでのファイル共有
  5. よくある問題とトラブルシューティング
    1. 問題1: リンクをクリックしても開けない
    2. 問題2: ファイルが見つかりません(404エラー)
    3. 問題3: 画像やCSSが読み込まれない
  6. セキュリティ上の注意点
    1. file:// プロトコルは危険?
    2. リスク1: パス情報の漏洩
    3. リスク2: 社外の人には開けない
    4. リスク3: 悪意のあるコードの実行
    5. 安全に使うためのルール
  7. ブラウザ別の対応状況
    1. Google Chrome
    2. Microsoft Edge
    3. Firefox
    4. Safari(Mac)
  8. よくある質問(Q&A)
    1. Q1: file:// と file:/// の違いは?
    2. Q2: なぜWebページからfile:// が開けないの?
    3. Q3: 社内でfile:// リンクを使いたい!
    4. Q4: ファイル名に日本語があるとエラーになる
    5. Q5: file:// でフォルダを開きたい
    6. Q6: HTTPSページからfile:// にアクセスしたい
    7. Q7: file:// で動画や音声は再生できる?
  9. 代替手段:file:// 以外の選択肢
    1. 1. ローカルWebサーバーを使う
    2. 2. クラウドストレージを使う
    3. 3. 社内ファイルサーバー + Web UI
    4. 4. デスクトップアプリケーション
  10. まとめ:file:// プロトコルを正しく使おう
    1. 重要ポイントのおさらい
    2. 使い分けガイド
    3. 今日から使えるテクニック
    4. 歴史
    5. 他のプロトコルと比較
    6. 開発者向けTips

file:// プロトコルって何?

簡単に言うと

file:// プロトコルは、ブラウザでローカルファイル(自分のパソコンやネットワーク上のファイル)にアクセスするための「住所の書き方」です。

普段Webサイトを見る時は:

https://www.example.com/index.html

ローカルファイルにアクセスする時は:

file:///C:/Users/username/Documents/file.html

このような書き方をします。

もう少し詳しく

URLには「プロトコル」という概念があります。

プロトコルとは?

コンピューター同士が通信する時の「お約束事」です。

プロトコル用途
http:// / https://Webサイトを見るhttps://www.google.com
ftp://ファイル転送ftp://ftp.example.com
mailto:メール送信mailto:info@example.com
file://ローカルファイルにアクセスfile:///C:/document.pdf

つまり、file:// は「このパソコン(またはネットワーク上)のファイルを開いてね」という意味なのです。


file:// の基本的な書き方

なぜスラッシュが3つ?(file:///)

初めて見ると「なんでスラッシュが3つもあるの?」と思いますよね。

実はこれには理由があります。

URLの基本構造:

プロトコル://ホスト名/パス

例えば、Webサイトなら:

https://www.example.com/page.html
       ↑           ↑          ↑
   プロトコル  ホスト名      パス

ローカルファイルの場合:

file:///C:/folder/file.html
     ↑↑ ↑
     ||└── パス
     |└─── ホスト名(空=自分のパソコン)
     └──── プロトコル

つまり:

  • file: → プロトコル名
  • // → URLの区切り(お決まりの記号)
  • (空白) → ホスト名が省略されている(=localhostの意味)
  • /C:/... → ファイルのパス

だからスラッシュが3つ並ぶのです!

Windows でのファイルパス表記

ローカルドライブの場合

通常のWindowsパス:

C:\Users\username\Documents\file.pdf

file:// プロトコル形式:

file:///C:/Users/username/Documents/file.pdf

変換のポイント:

  1. 先頭に file:/// を付ける
  2. バックスラッシュ \ をスラッシュ / に変える
  3. ドライブ文字はそのまま(C:, D: など)

ネットワークドライブ(UNCパス)の場合

通常のUNCパス:

\\server\share\folder\file.pdf

file:// プロトコル形式(2パターンあります):

パターン1: 2スラッシュ形式

file://server/share/folder/file.pdf

パターン2: 4スラッシュ形式

file:////server/share/folder/file.pdf

どちらを使う?

  • Microsoft .NET → 主に2スラッシュ形式
  • Java → 主に4スラッシュ形式
  • 一般的な使い分け: どちらも動くので、好きな方を使ってOK

変換例:

通常のUNCパス:
\\192.168.1.100\shared\documents\report.xlsx

↓

file://形式:
file://192.168.1.100/shared/documents/report.xlsx

または

file:////192.168.1.100/shared/documents/report.xlsx

Mac / Linux でのファイルパス表記

通常のパス:

/Users/username/Documents/file.pdf

file:// プロトコル形式:

file:///Users/username/Documents/file.pdf

Mac/Linuxは元々スラッシュ / を使うので、変換が簡単です!


実際の使い方

ブラウザのアドレスバーで直接開く

方法:

  1. ブラウザを開く
  2. アドレスバーに file:/// と入力
  3. その後にファイルパスを入力
  4. Enter を押す

例(Windows):

file:///C:/Users/username/Desktop/test.html
file:///C:/Documents/report.pdf
file:///D:/Pictures/photo.jpg

例(Mac/Linux):

file:///Users/username/Documents/test.html
file:///home/username/report.pdf

HTMLファイルでローカルファイルをリンク

シナリオ: HTMLファイルから、同じパソコンの別のファイルにリンクしたい

HTMLコード例:

<!-- 相対パスの場合 -->
<a href="file:///C:/Users/username/Documents/report.pdf">レポートを開く</a>

<!-- 同じフォルダ内なら相対パスも使える -->
<a href="report.pdf">レポートを開く</a>

<!-- 画像を表示 -->
<img src="file:///C:/Users/username/Pictures/photo.jpg" alt="写真">

メールやチャットでフォルダを共有

社内メール例:

件名: Q1 決算資料の場所

本文:
以下のフォルダに資料を置きました:
file://server/shared/2024/Q1/

よろしくお願いします。

ただし! この方法は後述する「セキュリティ制限」の影響を受けます。


file:// プロトコルの便利な使い方

1. Webブラウザをファイルビューアーとして使う

ブラウザは画像やPDFの表示が得意です。

活用例:

# PDFを開く
file:///C:/Documents/manual.pdf

# 画像を開く
file:///C:/Pictures/vacation.jpg

# フォルダをブラウザで閲覧
file:///C:/Users/username/Downloads/

メリット:

  • ズーム機能が便利
  • PDFならページ送りもスムーズ
  • 複数のファイルをタブで管理

2. ローカルWebサイト開発

Web開発中、まずローカルで動作確認したい時に便利。

使い方:

<!-- index.html -->
<!DOCTYPE html>
<html>
<head>
    <title>テストページ</title>
</head>
<body>
    <h1>ローカルテスト</h1>
    <img src="images/logo.png">
</body>
</html>

開き方:

  1. index.htmlを右クリック
  2. 「プログラムから開く」→ ブラウザを選択

または:

file:///C:/project/website/index.html

3. 社内イントラでのファイル共有

状況: 社内サーバーに資料を置いて、メンバーに共有したい

手順:

1. ファイルサーバーに資料を置く
   → \\server\shared\team\資料.pdf

2. file:// 形式に変換
   → file://server/shared/team/資料.pdf

3. メールやチャットで共有

注意: ブラウザのセキュリティ設定によっては開けない場合があります(後述)。


よくある問題とトラブルシューティング

問題1: リンクをクリックしても開けない

症状:
メールやWebページのfile:// リンクをクリックしても何も起こらない

原因:
ブラウザのセキュリティ制限

なぜ?

セキュリティ上の理由で、Webページ(http/https)からローカルファイル(file://)へのアクセスは、ほとんどのブラウザでブロックされます。

https://example.com のページ
        ↓
   (クリック)
        ↓
file:///C:/file.pdf
        ↓
    ❌ ブロック!

理由:
悪意のあるWebサイトが、あなたのパソコンのファイルに勝手にアクセスするのを防ぐため

解決方法:

方法1: アドレスバーに直接コピペ

1. file:// のリンクをコピー
2. ブラウザのアドレスバーに貼り付け
3. Enter を押す

方法2: ブラウザ拡張機能を使う(Edgeの場合)

「ローカルファイルリンクの有効化」という拡張機能:

1. Edge拡張機能ストアを開く
2. 「Enable Local File Links」で検索
3. インストール

注意: この方法でもエクスプローラーは開かず、ブラウザ内で表示されます。

方法3: IEモードを使う(Edgeの場合)

古いInternet ExplorerのモードならFile:// が動作します。

設定 → IEモードページ → サイトを追加

ただし: IEモードはいずれ廃止されるので、長期的な解決策ではありません。

問題2: ファイルが見つかりません(404エラー)

症状:
file:// URLを入力してもエラーになる

原因と解決策:

原因1: パスが間違っている

❌ 間違い:
file://C:/Users/username/file.pdf
→ スラッシュが2つしかない

✓ 正しい:
file:///C:/Users/username/file.pdf
→ スラッシュは3つ

原因2: バックスラッシュを使っている

❌ 間違い:
file:///C:\Users\username\file.pdf
→ \ を使っている

✓ 正しい:
file:///C:/Users/username/file.pdf
→ / を使う

原因3: 日本語や特殊文字が含まれている

ファイル名: 資料 (1).pdf

❌ 間違い:
file:///C:/Documents/資料 (1).pdf

✓ 正しい(エンコード):
file:///C:/Documents/%E8%B3%87%E6%96%99%20(1).pdf

解決: スペースは %20、日本語はURLエンコードする

問題3: 画像やCSSが読み込まれない

症状:
HTMLファイルは開けるけど、画像やCSSが表示されない

原因:
相対パスが間違っている、またはCORS制限

解決方法:

解決策1: 絶対パスを使う

❌ 相対パスだと動かないことがある:
<img src="images/photo.jpg">

✓ 絶対パスなら確実:
<img src="file:///C:/project/images/photo.jpg">

解決策2: ローカルサーバーを立てる

file:// ではなく、ローカルサーバーを使う方が確実:

# Python 3を使う場合
python -m http.server 8000

# その後、ブラウザで
http://localhost:8000

セキュリティ上の注意点

file:// プロトコルは危険?

はい、使い方によっては危険です。

リスク1: パス情報の漏洩

file:///C:/Users/TaroYamada/Documents/secret.pdf

このURLを共有すると:

  • ユーザー名(TaroYamada)がバレる
  • フォルダ構造が分かる
  • ファイル名も分かる

リスク2: 社外の人には開けない

file://company-server/shared/confidential.pdf

このリンクは:

  • 社内ネットワークでしか開けない
  • 外部に送っても意味がない

リスク3: 悪意のあるコードの実行

file:// で開いたHTMLファイルは、ローカルファイルシステムへのアクセス権限を持つ可能性があります。

安全に使うためのルール

【ルール1】信頼できるファイルだけを開く
→ 不明なfile:// リンクはクリックしない

【ルール2】機密情報の共有には使わない
→ 専用のファイル共有サービスを使う

【ルール3】パスにユーザー名を含めない
→ できるだけ共有フォルダを使う

【ルール4】社外の人には送らない
→ 開けないので意味がない

【ルール5】重要なシステムでは無効化を検討
→ セキュリティポリシーで制限

ブラウザ別の対応状況

Google Chrome

対応:

  • ✓ アドレスバーからの直接アクセス: OK
  • ❌ Webページからのfile:// リンク: NG
  • ⚠ ローカルHTMLからの相対パス: 制限あり

設定:
拡張機能「Enable Local File Links」で一部対応可能

Microsoft Edge

対応:

  • ✓ アドレスバーからの直接アクセス: OK
  • ❌ Webページからのfile:// リンク: NG
  • ⚠ IEモードで一部対応

推奨:
IEモードまたは拡張機能の利用

Firefox

対応:

  • ✓ アドレスバーからの直接アクセス: OK
  • ❌ Webページからのfile:// リンク: NG
  • ✓ ローカルHTMLからの読み込み: 比較的緩い

設定:
about:config で一部挙動を変更可能

Safari(Mac)

対応:

  • ✓ アドレスバーからの直接アクセス: OK
  • ❌ Webページからのfile:// リンク: NG
  • ✓ ローカルファイルの相対パス: OK

よくある質問(Q&A)

Q1: file:// と file:/// の違いは?

A: 基本的には同じです!

file://localhost/C:/file.pdf
↓ localhostを省略
file:///C:/file.pdf

localhost を省略すると、スラッシュが3つになるだけです。

推奨: file:/// (スラッシュ3つ)を使いましょう。

Q2: なぜWebページからfile:// が開けないの?

A: セキュリティのためです。

もし開けてしまうと:

悪意のあるサイトが、あなたのパソコンの
C:/Users/username/Documents/パスワード.txt
を勝手に読み取れてしまいます!

だからブラウザがブロックしているのです。

Q3: 社内でfile:// リンクを使いたい!

A: 以下の方法があります:

方法1: 専用アプリを作る

  • 社内専用のアプリケーションを開発
  • アプリ内ならfile:// が使える

方法2: ショートカットファイルを配布

  • .lnkファイル(Windowsショートカット)を配布
  • ダブルクリックでファイル/フォルダが開く

方法3: URLスキームを自作

  • company:// のような独自プロトコルを作成
  • レジストリに登録してエクスプローラーと連携

Q4: ファイル名に日本語があるとエラーになる

A: URLエンコードが必要です。

変換方法:

元のパス:
C:/ドキュメント/資料.pdf

↓ URLエンコード

file:///C:/%E3%83%89%E3%82%AD%E3%83%A5%E3%83%A1%E3%83%B3%E3%83%88/%E8%B3%87%E6%96%99.pdf

ツール: オンラインのURLエンコーダーを使うと便利です。

Q5: file:// でフォルダを開きたい

A: できます!

Windows:

file:///C:/Users/username/Documents/

Mac/Linux:

file:///Users/username/Documents/

末尾にスラッシュ / を付けるとフォルダが開きます。

ただし:

  • ブラウザ内でファイル一覧が表示される
  • エクスプローラーは開かない

Q6: HTTPSページからfile:// にアクセスしたい

A: 基本的に不可能です。

これはMixed Contentと呼ばれる問題です:

https:// (安全)
    ↓
file:// (安全性不明)
    ↓
❌ ブロック!

解決策:

  • ファイルもHTTPS経由で配信する
  • または、ページ自体をfile:// で開く

Q7: file:// で動画や音声は再生できる?

A: できます!

<video controls>
    <source src="file:///C:/Videos/movie.mp4" type="video/mp4">
</video>

<audio controls>
    <source src="file:///C:/Music/song.mp3" type="audio/mpeg">
</audio>

ただし、ブラウザが対応している形式に限ります。


代替手段:file:// 以外の選択肢

file:// が使いにくい場合、以下の代替手段があります。

1. ローカルWebサーバーを使う

メリット:

  • http:// なのでセキュリティ制限がない
  • 開発環境として最適

方法:

# Python 3
python -m http.server 8000

# Node.js (http-server)
npx http-server -p 8000

# PHP
php -S localhost:8000

その後:

http://localhost:8000

2. クラウドストレージを使う

おすすめサービス:

  • Google Drive
  • OneDrive
  • Dropbox

メリット:

  • どこからでもアクセス可能
  • 共有が簡単
  • セキュリティも高い

3. 社内ファイルサーバー + Web UI

方法:

  • ファイルサーバーにWeb UIを追加
  • https:// でアクセス

例:

  • Nextcloud
  • ownCloud
  • SharePoint

4. デスクトップアプリケーション

考え方:
Webブラウザではなく、専用アプリで開く

例:

  • Electronアプリ
  • デスクトップアプリケーション

まとめ:file:// プロトコルを正しく使おう

file:// プロトコル、理解できましたか?

重要ポイントのおさらい

【基本の書き方】
Windows: file:///C:/folder/file.txt
Mac/Linux: file:///Users/username/file.txt
ネットワーク: file://server/share/file.txt

【できること】
✓ ブラウザでローカルファイルを開く
✓ PDFや画像をブラウザで表示
✓ ローカルWebサイトの開発

【できないこと】
❌ WebページからのFile:// リンク
❌ HTTPS→file:// のアクセス
❌ 社外の人とファイル共有

【セキュリティ】
⚠ 信頼できるファイルだけ開く
⚠ 機密情報の共有には使わない
⚠ パス情報に注意

使い分けガイド

【file:// を使うべき場面】
・ローカルでHTMLファイルをテスト
・自分のパソコンのファイルをブラウザで見る
・社内サーバーのドキュメントを参照(制限あり)

【file:// を避けるべき場面】
・外部の人とファイルを共有
・本番環境のWebサイト
・セキュリティが重要なシステム

【代替手段を使うべき場面】
・チームでファイルを共有
・外出先からアクセスしたい
・クロスプラットフォームで動かしたい

今日から使えるテクニック

【テクニック1】素早くファイルを開く
1. Windowsキー + R
2. shell:downloads (ダウンロードフォルダ)
3. ファイルを右クリック → プロパティ
4. パスをコピー
5. file:/// + パスでブラウザに貼り付け

【テクニック2】社内メールでフォルダを共有
\\server\share\folder
↓
file://server/share/folder
でリンク化(ただし制限あり)

【テクニック3】ローカルHTML開発
1. HTMLファイルをブラウザにドラッグ&ドロップ
2. 自動的にfile:// で開く
3. 編集→保存→リロードで確認

ボーナス情報:file:// に関する豆知識

歴史

file:// プロトコルは、1994年のRFC 1738で初めて定義されました。

当時はまだインターネットが普及する前で、ローカルファイルをブラウザで見る需要が高かったのです。

他のプロトコルと比較

プロトコル用途速度セキュリティ範囲
file://ローカルファイル⭐⭐⭐⭐⭐⚠低ローカル
http://Webサイト⭐⭐⭐⚠低グローバル
https://安全なWebサイト⭐⭐⭐⭐⭐⭐⭐⭐グローバル
ftp://ファイル転送⭐⭐⭐⭐⚠低グローバル
sftp://安全なファイル転送⭐⭐⭐⭐⭐⭐⭐⭐グローバル

開発者向けTips

JavaScriptでfile:// を扱う:

// 現在のURLを確認
console.log(window.location.protocol);
// → "file:" ならローカルファイル

// file:// では一部の機能が制限される
if (window.location.protocol === 'file:') {
    console.log('ローカルモードで実行中');
    // AJAXなどは動作しない可能性
}

相対パスと絶対パスの使い分け:

<!-- ✓ 同じフォルダなら相対パスでOK -->
<img src="image.jpg">

<!-- ✓ 別のフォルダなら絶対パスが確実 -->
<img src="file:///C:/project/images/image.jpg">

これでfile:// プロトコルはマスター!
正しく理解して、安全に活用しましょう!

コメント

タイトルとURLをコピーしました