Обходной путь для href= «file://///…» в Firefox

Вопрос:На сайте интрасети позвольте мне сказать, что я хочу связать файл с общим ресурсом с помощью UNC, по адресу: servernamefoldernamefilename.rtf Кажется, правильный способ сделать это с помощью разметки следующим образом: filename.rtf Это пять косых черт - два для протокола, один для указания корня файловой системы, а затем еще два, чтобы указать начало имени сервера.

Вопрос:

На сайте интрасети позвольте мне сказать, что я хочу связать файл с общим ресурсом с помощью UNC, по адресу:

\servernamefoldernamefilename.rtf

Кажется, правильный способ сделать это с помощью разметки следующим образом:

<a href=»file://///servername/foldername/filename.rtf»>filename.rtf</a>

Это пять косых черт – два для протокола, один для указания корня файловой системы, а затем еще два, чтобы указать начало имени сервера.

Это отлично работает в IE7, но в Firefox 3.6 он будет работать, только если html – из локального файла. Я не могу заставить его работать, когда файл поступает с веб-сервера. Ссылка “мертвая” – щелчок на ней ничего не делает.

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

Так как это, очевидно, функция Firefox, а не ошибка, может кто-нибудь объяснить, в чем преимущество заключается в предотвращении такого типа ссылки?

Лучший ответ:

Как оказалось, я не знал, что Firefox имеет это ограничение/функцию. Я могу сочувствовать этой функции, так как она мешает пользователю невольно получать доступ к локальной файловой системе. К счастью, есть полезные альтернативы, которые могут обеспечить аналогичный пользовательский интерфейс при использовании протокола HTTP.

Одной из альтернатив доступу к контенту через UNC-пути является публикация вашего контента с использованием протокола WebDAV. Некоторые системы управления контентом, такие как MS SharePoint, используют WebDAV для обеспечения доступа к документам и страницам. Что касается опыта конечного пользователя, он выглядит и чувствует себя так же, как доступ к сетевым файлам с UNC-путём; однако все взаимодействия с файлами выполняются через HTTP.

Это может потребовать скромного изменения в философии доступа к файлу, поэтому я предлагаю вам прочитать о протоколе, конфигурации и разрешении WebDAV, относящемся к вашей конкретной серверной технологии.

Вот несколько ссылок, которые могут быть полезны, если вам интересно узнать больше о настройке и использовании WebDAV на нескольких ведущих серверах HTTP:

Ответ №1

Этот вопрос задавали как минимум два раза раньше, но я не смог найти эти сообщения, прежде чем публиковать свои собственные (извините):

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

Ссылки Firefox на локальные или сетевые страницы не работают

Вот краткое изложение ответов из всех трех сообщений:

  • Использовать WebDAV — это лучшее решение для меня, хотя и гораздо более активное, чем я ожидал.
  • Используйте http:// вместо file:///// — это будет копировать документ, который пользователь не может редактировать и сохранять.
  • Отредактируйте user.js на клиенте, как описано здесь — это работало для меня в Firefox 3.6.15, но без доступа к клиентским машинам это не решение.
  • В Firefox используйте about: config, измените параметр Security.fileuri.strict_origin_policy на false — это не работает для меня в 3.6.15. Другие пользователи в [SO] также сообщили, что они не работают.
  • Используйте расширение locallinks Firefox — это устанавливает для Security.fileuri.strict_origin_policy значение true для вас и не имеет другого эффекта.
  • Прочитайте файл-сервер и отправьте его как ответ — это создает ту же проблему, что и просто настройка веб-сервера для использования http://.

Ответ №2

Браузеры, такие как Firefox, отказываются открывать файл://link, когда сама родительская страница HTML обслуживается с использованием другого протокола, например http://.

Лучше всего настроить ваш веб-сервер для предоставления сетевого сопоставленного файла в качестве веб-ресурса, чтобы к нему можно было получить доступ по http://с того же сервера, а не по файлу://.

Поскольку он неясно, какой веб-сервер вы используете, я не могу подробно рассказать о том, как достичь этого.

Ответ №3

В Firefox для открытия File:\\yourFileServerdocsdoc.txt например, вам нужно включить некоторые параметры в конфигурации Firefox:

user_pref(«capability.policy.policynames», «localfilelinks»); user_pref(«capability.policy.localfilelinks.sites», «http://yourServer1.companyname.com «); user_pref(«capability.policy.localfilelinks.checkloaduri.enabled», «allAccess»); Ответ №4

Я не знаю, будет ли это работать, но дайте ему шанс! Старая статья, но потенциально все еще полезна.

http://www.techlifeweb.com/firefox/2006/07/how-to-open-file-links-in-firefox-15.html

Оцените статью
Добавить комментарий