Как отключить протокол file: // в Firefox?

6

Как отключить файл: // протокол в Firefox

Я хочу, чтобы пользователи не просматривали локальные файлы на машине.

Я уже отключил функции SaveAs и OpenFile.

Я хочу, чтобы пользователь не просматривал локальные файлы и не открывал его, если он знает полный путь.

Ammroff
источник
1
Не забудьте отключить справку тоже. Иногда справка открывает черные ходы.
Цилб

Ответы:

3

В Университете Ватерлоо есть страница с подробным описанием изменения файла browser.js для отключения протоколов файлов, chrome, about и т. Д.

Кстати, это был первый результат в Google для «протокола отключения файлов Firefox» - вероятно, был бы первым, если бы этот вопрос не был первым.

Марк Рушаков
источник
Я уже посещал этот сайт, и предоставленный им код: if (location.match (/ ^ file: /) || location.match (/ ^ \ //) || location.match (/ ^ chrome: /) | | location.match (/ ^ resource: /) || (! location.match (/ ^ about: blank /) && location.match (/ ^ about: /))) {loadURI ("about: blank"); } На других сайтах я обнаружил, что этот код нужно поместить в функцию BrowserLoadURI, которой нет в ff3.x
3
На странице предлагается черный список, вместо этого я бы выбрал белый список. «http» и «https», и, возможно, «ftp» должно быть достаточно.
Джулиано
3

Я нашел способ сделать это.

Сначала сценарий нашей проблемы:

  • Мы хотим, чтобы клиент использовал ПК, и он имел доступ только к Firefox
  • Нет "моего компьютера", "cmd", ... и т. Д.
  • Мы хотим, чтобы они не просматривали локальные файлы Firefox, а просто просматривали некоторые сайты.
  • Мы хотим заблокировать файл: // протокол, который вызывает просмотр локальных файлов.

Мое предлагаемое решение:

  1. Скачайте расширение r-kiosk и измените его для запуска на Firefox 3.5. *

  2. Измените userPref.js, чтобы в адресной строке Firefox отображалась адресная строка. Здесь мы прекращаем Сохранить как, открываем файл, удаляем расширение, нет источника просмотра, но пользователи по-прежнему просматривают локальные файлы, набирая file: /// c: / in url.

  3. Измените dirListing.css в Firefox / chrome / classic.jar / skin / classic / (имя скина) / dirListing

    body{
               ...
               background-image:url(chrome://global/skin/dirListing/forbidden.png)
        }
    table{
    ...
    display:none;
    }
    

Скрыть элементы, такие как P, H1, используя visiblity:hidden

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

альтернативный текст

Вот результат:

текст ссылки

Ammroff
источник
Разве «r-kisok» (жирным шрифтом, как «1.» выше) не должен быть r-kiosk ?
Аргалатыр
Итак, принятое решение состоит в том, чтобы изменить внутренние таблицы стилей Firefox, чтобы скрыть список каталогов?
Драмзи