Ссылки Firefox на локальные или сетевые страницы не работают
У меня есть приложение .asp, где файлы изображений (.PDF) хранятся в каталоге (который подается копиром/сканером). Созданные имена файлов хранятся в таблице базы данных. Когда запрос запускается с веб-страницы, создается ссылка на файл. При щелчке изображение должно отображаться.
Эта функция работает в Internet Explorer на 100%. В Firefox нет такой удачи (и у меня есть некоторые пользователи Firefox). Созданная гиперссылка выглядит так: file://Server/Scanner/XYZ.pdf
В Firefox говорится, что причина такова:
Ссылки на локальные или сетевые страницы не работают. В качестве меры предосторожности Firefox запрещает сайтам в Интернете ссылаться на файлы, которые хранятся в локальной вычислительной среде. Эти файлы могут включать файлы на вашем компьютере, подключенные сетевые диски и сетевые пути UNC
Ни одно из предложений об обходном пути, похоже, не работает (или я не понимаю шаги для создания изображения)
Любые предложения?
Ответы
Ответ 1
Это поведение Firefox по умолчанию, предназначенное для безопасности. Предполагается, что большинство веб-сайтов не знают, где и где находятся локальные файлы (включая пути UNC).
Это можно отключить в firefox:
- введите "about: config" в адресной строке и примите "я буду осторожен"
- найдите "security.checkloaduri" в более старых версиях или "security.fileuri.strict_origin_policy" в новых версиях firefox и измените значение на "false"
- перезапустить firefox
Это должно сделать это за вас. У вас есть дополнительная информация:
Ответ 2
ОБНОВЛЕНО
Firefox 1.5.x или новее
Найдите папку профиля Firefox на вашем жестком диске, например. (12345678 обозначает восемь случайных цифр и букв):
- Windows: "C:\Documents and Settings\Username\Application Data\Mozilla\Firefox\Profiles12345678.default \"
- Linux: "/home/username/.mozilla/firefox/12345678.default/"
- OS X:/Имя пользователя/Library/Поддержка приложений/Firefox/Профили/12345678.default/
В этой папке создайте текстовый файл с именем user.js. Напишите следующую строку в этот текстовый файл:
user_pref("capability.policy.default.checkloaduri.enabled", "allAccess");
Работает на моем ПК (Firefox 3.0.3 и 19.0 betastrong > ) со следующими ссылками:
-
<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, установите флажок Дополнительно\Доверенные\Разрешить локальные ссылки.
Ответ 3
Чтение в приведенном здесь решении, я следил за ссылкой Ссылки на локальные страницы не работают, и для меня это только хорошо работало (я использую wordpress для личные FAQ на локальной установке):
- Перейдите в "% ваших документов и настроек%\Данные приложения\Mozilla\Firefox\Профили\%ваш профиль% \"
- отредактируйте файл "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 строки, которые вы добавили в конце, будут где-то в начале;).
Ответ 4
Вы можете загрузить LocalLink FireFox Add-On, который позволяет вам щелкнуть правой кнопкой мыши по локальной ссылке и выбрать "Открыть в окне переднего плана". Другие пункты меню "Открыть..." должны работать, но не для меня.
http://locallink.mozdev.org/
Кроме того, вы можете использовать NoScript, как предлагает Алекс, что позволяет нормально щелкнуть локальные ссылки. Спасибо Алекс.
Ответ 5
Решение Marko должно работать для ссылок, которые также находятся в локальной файловой системе, но я не думаю, что это должно позволить http://странице ссылаться на файл://page.
Проблема для людей, ссылающихся на страницы http://, обсуждается здесь:
http://kb.mozillazine.org/Links_to_local_pages_do_not_work
наряду с объяснением того, как обходить его и подвергать риску.
Ответ 6
Вместо этого вы можете прочитать файл с диска и затем отправить его в ответ на своей странице.
Смотрите пример для примера.
Ответ 7
Спасибо за то, что я ищу это решение с тех пор,
:: Это работало:
Это можно отключить в 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
::
Ответ 8
Вы не должны хранить страницы в своем каталоге приложений и ссылаться на них таким образом. http://SITENAME/Server/scanner/XYZ.pdf.
Мы делаем что-то подобное с файлами, хранящимися в одном каталоге, и просто сохраняем имя файла. мы затем создаем ссылку, используя имя известной папки и добавляем имя файла. это работает довольно хорошо.
Наконец, firefox намного более анальный о направлениях косых черт в именах файлов. Убедитесь, что все они '/', а не '\'.
Надеюсь, что это поможет.
Ответ 9
остерегайтесь несовместимости с gmarks (заменитель панели инструментов google)
как местная связь, так и менеджер политики работали для меня; локальная ссылка немного более плавная, политический менеджер дает вам больше контроля
Ответ 10
file://localhost///servername/share/file.txt
работает для меня на FF11
(из локального html файла: file:///C:/index.html
)