Firefox Ссылки на локальные или сетевые страницы не работают - PullRequest
33 голосов
/ 10 октября 2008

У меня есть приложение .asp, в котором файлы изображений (.PDF) хранятся в каталоге (подается от копира / сканера). Имена созданных файлов хранятся в таблице базы данных. Когда запрос запускается с веб-страницы, создается ссылка на файл. При нажатии изображение должно отображаться. Эта функциональность работает на 100% в Internet Explorer. Нет такой удачи в Firefox (и у меня есть некоторые пользователи Firefox). Созданная гиперссылка выглядит так file://Server/Scanner/XYZ.pdf

Firefox помогает предположить причину этого:

Ссылки на локальные или сетевые страницы не работают. В качестве меры безопасности Firefox запрещает сайтам в Интернете ссылаться на файлы, хранящиеся в локальной вычислительной среде. Эти файлы могут включать файлы на вашем компьютере, подключенные сетевые диски и сетевые пути UNC

Похоже, что ни одно из предложений по обходному пути не работает (или я не понимаю, как создать изображение) Есть предложения?

Ответы [ 10 ]

31 голосов
/ 10 октября 2008

Это поведение Firefox по умолчанию, разработанное для безопасности. Предполагается, что большинство веб-сайтов не знают, где и где находятся ваши локальные файлы (включая пути UNC).

Это может быть отключено в Firefox:

  • введите "about: config" в адресную строку и примите "я буду осторожен"
  • найдите «security.checkloaduri» в более старых версиях или «security.fileuri.strict_origin_policy» в новых версиях Firefox и измените значение на «false»
  • перезапустить Firefox

Это должно сделать это для вас. У вас есть больше информации здесь:

14 голосов
/ 10 октября 2008

ОБНОВЛЕНО

Firefox 1.5.x или новее

Найдите папку профиля Firefox на жестком диске, например, (12345678 обозначает восемь случайных цифр и букв):

  • Windows: «C: \ Documents and Settings \ Имя пользователя \ Данные приложения \ Mozilla \ Firefox \ Profiles12345678.default \»
  • Linux: "/home/username/.mozilla/firefox/12345678.default/"
  • OS X: / Имя пользователя / Библиотека / Поддержка приложений / Firefox / Профили / 12345678.default /

В этой папке создайте текстовый файл с именем user.js . Запишите следующую строку в этот текстовый файл:

user_pref("capability.policy.default.checkloaduri.enabled", "allAccess");

Работает на моем ПК (Firefox 3.0.3 и 19.0 beta ) со следующими ссылками:

  • <img src="file://///server/share/image.png" />
  • <img src="file://\\\server\share\image.png" />
  • <img src="file://d:\image.png" />
  • <img src="file:///d:\image.png" />
  • <img src="file://d:/image.png" />
  • <img src="file:///d:/image.png" />
  • <img src="file://localhost/d:/image.png" />

Кроме того, если вы используете надстройку NoScript, установите флажок Advanced \ Trusted \ Allow local links .

7 голосов
/ 07 июня 2012

Читая решение, данное здесь, я перешел по ссылке Ссылки на локальные страницы не работают , и у меня только это работало хорошо (я использую WordPress для личного FAQ по локальной установке Wamp) :

  • Перейдите в "% Ваши документы и настройки% \ Application Data \ Mozilla \ Firefox \ Profiles \% ваш профиль% \"
  • редактировать файл "prefs.js"
  • добавить следующие строки в конце документа:

.

user_pref("capability.policy.localfilelinks.checkloaduri.enabled", "allAccess");
user_pref("capability.policy.localfilelinks.sites", "http://localhost");
user_pref("capability.policy.maonoscript.javascript.enabled", "allAccess");

Вы можете оставить для параметра «security.checkloaduri» значение по умолчанию, а также «security.fileuri.strict_origin_policy». Благодаря этим 3 строкам вы просто делаете исключение для своего локального сервера.

Будьте осторожны, если вам нужно вернуться к этому файлу prefs.js, обратите внимание, что Firefox упорядочит его по алфавиту. Таким образом, 3 строки, которые вы добавите в конце, будут где-то в начале;).

2 голосов
/ 30 июня 2010

Решение Марко должно работать для ссылок, которые также находятся в локальной файловой системе, но я не думаю, что оно должно позволять странице http: // ссылаться на страницу file: //

Здесь обсуждается вопрос о ссылках на людей со страниц http: //: http://kb.mozillazine.org/Links_to_local_pages_do_not_work вместе с объяснением того, как его обойти и подвергнуть себя риску.

2 голосов
/ 11 ноября 2008

Вы можете загрузить надстройку LocalLink FireFox, которая позволяет щелкнуть правой кнопкой мыши локальную ссылку и выбрать «Открыть в окне переднего плана». Другие пункты меню «Открыть ...» должны работать, но не для меня.

http://locallink.mozdev.org/

Кроме того, вы можете использовать NoScript, как предлагает Алекс, который позволяет нормально щелкать по локальным ссылкам. Спасибо, Алекс.

1 голос
/ 22 декабря 2009

Тонны благодарностей. Я искал это решение с месяца

:: Это сработало ::

Это может быть отключено в Firefox:

* type "about:config" in the address bar and accept "i'll be careful"
* find "security.checkloaduri" in older versions or "security.fileuri.strict_origin_policy" in newer versions of firefox and change the value to "false"
* restart firefox

::::

1 голос
/ 10 октября 2008

Вместо этого вы можете прочитать файл с диска и затем отправить его в ответе со своей страницы.

См. ссылку для примера.

0 голосов
/ 23 апреля 2012

file://localhost///servername/share/file.txt у меня работает на FF11

(из локального html-файла: file:///C:/index.html)

0 голосов
/ 02 апреля 2009

остерегайтесь несовместимости с gmarks (заменитель панели инструментов Google) у меня работала как локальная ссылка, так и менеджер политик; локальная ссылка немного плавнее, менеджер политик дает вам больше контроля

0 голосов
/ 10 октября 2008

если вы действительно не храните страницы в каталоге вашего приложения и не ссылаетесь на них таким образом. http://SITENAME/Server/scanner/XYZ.pdf.

Мы делаем нечто подобное с файлами, хранящимися в одном каталоге, и просто сохраняем имя файла. Затем мы создаем ссылку, используя известное имя папки и добавляем имя файла. это работает довольно хорошо.

Наконец, Firefox гораздо более анальный в отношении направлений косых черт в именах файлов. Убедитесь, что они все '/', а не '\'.

Надеюсь, это поможет.

...