Откройте прямой файл на жестком диске из Firefox (файл: ///)

10267
Aviv

У меня есть небольшая система PHP, которую я создал для себя. Эта система содержит несколько .docи .docxфайлы документов. Я хочу иметь возможность открывать их прямо из браузера, не загружая их.

Я создал ссылку: <a href="file:///c:/mysite/myfile.docx">myfile</a>. Но Firefox не открывает ссылку. href="http://localhost/myfile.docx"работает отлично - он предлагает мне скачать файл.

Любые идеи о том, как я могу это сделать? Нужно ли что-то менять в настройках Firefox или настройках безопасности?

3

2 ответа на вопрос

4
fretje

И Firefox, и IE8 поддерживают схему File URI .

Вот некоторые примеры, действительные для систем Windows, ссылающиеся на тот же файл c: \ WINDOWS \ clock.avi

file: // localhost / c | /WINDOWS/clock.avi
file: /// c | /WINDOWS/clock.avi
file: // localhost / c: /WINDOWS/clock.avi
file: /// c: / WINDOWS /clock.avi

Хотя последний является наиболее очевидным и понятным для человека, первый является наиболее полным и правильным.

Видимо (из того же URL):

Браузеры Mozilla отказываются следить за URL-адресами файлов на странице, которую он получил по протоколу HTTP.

но:

Браузеры Mozilla могут быть настроены так, чтобы отменять это ограничение безопасности, как подробно описано в « Ссылки на локальные страницы Mozillazine не работают ».

Большое спасибо! Хотя схема file: /// URI не работала в IE8 и Firefox, я использовал расширение в приведенной вами ссылке, и это решило проблему. Aviv 14 лет назад 0
0
ederag

Хотя решение, указанное в « Ссылки на локальные страницы не работают», некоторое время было ошибочным, оно было исправлено .

Например, если страница со file://...ссылками обслуживается на локальном хосте через порт 49154, одним из решений является

  • выход из Firefox
  • редактировать prefs.js, добавляя строки

    user_pref("capability.policy.policynames", "localfilelinks"); user_pref("capability.policy.localfilelinks.sites", "https://localhost:49154"); user_pref("capability.policy.localfilelinks.checkloaduri.enabled", "allAccess");

    и, возможно, для httpsпротокола:

    user_pref("capability.policy.trustable.sites", "https://localhost:49154");

  • перезапустите Firefox

Ссылки на файлы теперь должны открываться при щелчке левой кнопкой мыши.

(протестировано с Firefox 45 под KDE, для личного блога под названием elog )

Похожие вопросы