I'd ingin memiliki sebuah file html yang mengatur file tertentu yang tersebar di seluruh hard drive saya. Sebagai contoh, saya memiliki dua file yang saya akan link ke:
C:\Programs\sort.mw
C:\Videos\lecture.mp4
Masalahnya adalah bahwa saya'd seperti link yang berfungsi sebagai shortcut ke file. I've mencoba yang berikut ini:
<a href="C:\Programs\sort.mw">Link 1</a>
<a href="C:\Videos\lecture.mp4">Link 2</a>
... tapi link pertama tidak apa-apa dan yang kedua link akan membuka file yang di Chrome, tidak VLC.
Pertanyaan saya adalah:
Apakah ada cara untuk menyesuaikan HTML saya untuk mengobati link sebagai jalan pintas untuk file?
Jika ada isn't cara untuk menyesuaikan HTML, apakah ada cara lain untuk rapi link ke file yang tersebar di seluruh hard drive?
Komputer saya berjalan di Windows 7 dan web browser Chrome.
Anda perlu menggunakan file:///
protokol (ya, itu's tiga garis miring) jika anda ingin link ke file lokal.
<a href="file:///C:\Programs\sort.mw">Link 1</a>
<a href="file:///C:\Videos\lecture.mp4">Link 2</a>
Ini tidak akan pernah membuka file dalam aplikasi lokal secara otomatis. Yang's untuk alasan keamanan yang saya'll penutup di bagian terakhir. Jika terbuka, itu hanya akan terbuka di browser. Jika browser anda dapat menampilkan file, itu akan, jika tidak maka mungkin akan meminta anda jika anda ingin men-download file.
Beberapa browser, seperti versi modern dari Chrome, bahkan akan menolak untuk menyeberang dari protokol http ke file protokol, sehingga anda'd lebih baik pastikan anda membuka ini secara lokal menggunakan protokol file jika anda ingin melakukan hal ini sama sekali.
file:///
?Bagian pertama dari URL adalah protokol. Protokol adalah beberapa huruf, maka usus besar dan dua garis miring. HTTP://
dan FTP://
berlaku protokol; C:/
isn't dan I'm cukup yakin itu doesn't bahkan benar menyerupai satu.
C:/
juga isn't yang valid alamat web. Browser bisa menganggap itu's dimaksudkan untuk menjadi http://c/
dengan kosong port yang ditentukan, tapi yang's akan gagal.
Browser anda mungkin tidak menganggap itu's mengacu pada file lokal. Ini memiliki sedikit alasan untuk membuat asumsi bahwa karena situs publik biasanya don't mencoba untuk link ke masyarakat' file lokal.
Jadi jika anda ingin mengakses file lokal: ceritakan untuk menggunakan file protocol.
Karena itu's bagian dari File skema URI. Anda memiliki pilihan untuk menentukan tuan rumah setelah yang pertama dua garis miring. Jika anda melewatkan menentukan tuan rumah hanya akan menganggap anda're mengacu ke sebuah file pada PC anda sendiri. Ini berarti file:///C:/etc
adalah jalan pintas untuk file://localhost/C:/etc
.
Browser anda akan merespon untuk file-file ini dengan cara yang sama mereka'd menanggapi file yang sama di mana saja di internet. File-file ini tidak akan buka di file default handler (misalnya MS Word atau VLC Media Player), dan anda tidak akan dapat melakukan sesuatu seperti meminta File Explorer untuk membuka file's lokasi.
Ini adalah aplikasi yang sangat baik untuk keamanan anda.
Situs di browser anda tidak dapat berinteraksi dengan sistem operasi anda dengan sangat baik. Jika sebuah situs yang baik yang bisa memberitahu mesin anda untuk membuka kuliah.mp4 di VLC.exe, sebuah situs berbahaya bisa mengatakan itu untuk membuka virus.bat di CMD.exe. Atau itu hanya bisa memberitahu mesin anda untuk menjalankan beberapa Uninstall.exe file atau membuka File Explorer juta kali.
Ini mungkin tidak nyaman bagi anda, tapi HTML dan keamanan browser tidak't benar-benar dirancang untuk apa yang anda're lakukan. Jika anda ingin untuk dapat membuka kuliah.mp4 di VLC.exe pertimbangkan untuk menulis sebuah aplikasi desktop sebagai gantinya.
Jika anda menjalankan IIS pada PC anda, anda dapat menambahkan direktori yang anda mencoba untuk mencapai Direktori Virtual. Untuk melakukan ini, anda klik kanan pada Situs anda di ISS dan tekan "Tambahkan Virtual Directory". Nama folder virtual. Titik virtual folder ke lokasi folder pada PC lokal anda. Anda juga harus menyediakan kredensial yang memiliki hak untuk mengakses folder tertentu misalnya. HOSTNAME\username dan password. Setelah itu anda dapat mengakses file dalam folder virtual sebagai file lainnya di situs anda.
http://sitename.com/virtual_folder_name/filename.fileextension
By the way, ini juga bekerja dengan Chrome yang lain tidak menerima berkas-berkas protokol://
Semoga ini bisa membantu seseorang :)
kembali ke 2017:
gunakan URL.createObjectURL( file ) untuk membuat link lokal untuk file sistem yang user pilih;
don't lupa untuk memori bebas dengan menggunakan URL.revokeObjectURL()