Чи може Google Chrome відкривати локальні посилання?


138

Я посилаюсь на сторінку інтрамережі до локального файлу на спільному диску:

<a href="file:///s:/test.xls"> Test</a>

Це працює в IE та Firefox з додатком, який називається локальним посиланням.

Як я можу змусити це відкрити Google Chrome?

Дякую


Що станеться, якщо скинути file:///шматочок?
Нік Болтон

це не працює в інших 2 браузерах, я не намагався в хромі. спробуємо зараз
Енді

1
Здається, ви повинні мати можливість відкривати локальні файли також у chrome. У мене диск Z: і я бачу вміст папки за допомогою файлу: /// Z: /
dawez

Ви можете це зробити, якщо клацнути правою кнопкою миші та "відкрити в новій вкладці". Данно, якщо це досить добре ...
матовий спалює

Розширення , яке працює з поточним хромом (32.0.1700.107) тут: code.google.com/p/locallinks
Зейн

Відповіді:


42

Ви не можете зв’язатися file:///з HTML-документа, який сам по собі не є file:///міркуванням безпеки.


26
Можливо, це "недолік безпеки", але він також забезпечує основну функціональність у деяких випадках, а Chrome може дати нам можливість ввімкнути його для певних URL-адрес із попередженням та дослідженнями, щоб з’ясувати, як це зробити, а не просто відключивши його оптом
Arcan.NET

2
@ Arcan.NET Я не згоден. Це припускає погану практику, і коли вона розповсюджена, це ще один вектор атаки на соціальну інженерію .
bytecode77

4
@ bytecode77 У вас є хороший момент. Однак я заперечую, що це погана практика лише за певних обставин. Наприклад, що робити, якщо це було у корпоративній інтрамережі з обмеженим набором користувачів? Хоча це може бути поганою практикою, ті, хто вирішив неправомірно використовувати цю функцію, повинні нести відповідальність за свої дії, а не за вилучену корисну схему протоколу, щоб ніхто не мав користі (хто також використовував її належним чином).
Грак

1
Навіть не доступний локальний директор з index.html! Як би це було невпевнено? Зважаючи на таке політичне мислення, найбезпечніше взагалі не використовувати Chrome.

Я бачу вразливість безпеки, яку вирішує ця проблема. Але було б гарною особливістю мати список білих списків (або навіть допускати лише сторінки інтрамережі), щоб надійні сайти могли мати посилання на файли. Наприклад, у нас є звіт SSRS, який містить посилання на файли на спільній основі. Альтернатива, як показано нижче від @Guilherme Amorim , але що призводить до користувачам завантажувати нескінченні копії файлів , а не відкривати їх на акції
nonpoliticaltag

21

Це питання датоване, але у мене виникла така ж проблема, що я знайшов рішення: зіставити віртуальний каталог в IIS на мережевий диск з документами, тому URL-адреса стала дружньою адресою "http: //".

Налаштування віртуальних каталогів:

IIS:

http://www.iis.net/configreference/system.applicationhost/sites/site/application/virtualdirectory

Apache:

http://w3shaman.com/article/creating-virtual-directory-apache

Ура!


Дякую, це мені дуже допомогло. Це не тільки дозволяє мені відкривати файли, розміщені на іншому сервері, він відкриває їх безпосередньо в браузері.
D.Galvez

@ D.Galvez Радий, що комусь це було корисно.
Гільгерм Аморім

Це мені допомогло !! Велике спасибі
AndeeC

Хром - це червона оселедець. Рішення знаходиться в Apache2, через "віртуальний каталог, про який йдеться в цьому відповіді. (Цікаво, чи вирішить це Firefox.)
Рік Джеймс,

Спасибі - чудово працює для мене! Користувачі хотіли бачити файли через спільну мережу
Cordell

11

З того, що я бачив у цьому, наступне стосується Firefox та Chrome;

1) Якщо у вас відкрита HTML-сторінка з віддаленого хоста, file://посилання не працюватимуть, тобто ваш адресний рядок читається, http://someserver.domainа сторінка містить посилання, наприклад<a href="file:///S:/sharedfile.txt">

2) Якщо у вас є сторінка HTML , відкритий з локального хоста , то file://посилання будуть працювати тобто ваша адресна рядок читає file:///C:/mydir/index.htmlі сторінка містить посилання , такі як<a href="file:///S:/sharedfile.txt">

Для Internet Explorer точка 1) не відповідає дійсності. Доступ до файлу на вашому локальному хості можна отримати за допомогою file://синтаксису посилань із веб-сторінки на віддаленому хості. Це вважається недоліком безпеки в IE (Кого? Посилання?) (А він також є в IE8), оскільки віддалений хост може отримувати доступ до файлів на вашому локальному комп'ютері без вашого відома .... правда, їм доведеться пощастити з ім'ям файлу але є багато файлів із загальним іменем, які можуть містити особисту / приватну інформацію.


12
"Веб-сторінка від віддаленого хоста може отримати доступ до файлів на вашому локальному хості". Яку підтримку ви маєте для цієї претензії? Зв'язування файлу та доступ до файлу - це не одне і те ж, оскільки віддалений хост не може прочитати файл і не може визначити, чи існує файл. Чи є хакер, про який я не знаю?
стиле

1
Не працює для мене. Я відкриваю локальний файл у Chrome з файлом: ///, але він відмовляється завантажувати інші локальні файли.
mcv

10

Зараз локальні посилання здаються застарілими.

Схоже, LocalExplorer зайняв своє місце і забезпечує подібну функціональність:

https://chrome.google.com/webstore/detail/local-explorer-file-manag/eokekhgpaakbkfkmjjcbffibkencdfkl/reviews?hl=uk

Це в основному хромований плагін, який замінює file://посилання на localexplorer://посилання, в поєднанні з інстальованим обробником протоколу, який перехоплює localexplorer://посилання.

Найкраще, що я можу зараз знайти доступним, я не маю приналежності до розробника.


1
Дякую! Це розширення дійсно варте того, якщо ви хочете отримати доступ до локального файлу з іншого протоколу в Chrome.
AstralisSomnium

6

Розширення LocalLinks з найпопулярнішої відповіді не працювало для мене (дано, я намагався використовувати файл: //, щоб відкрити каталог у Windows Explorer, а не файл), тож я заглянув у інше вирішення. Я виявив, що це розширення "Відкрити в IE" - це хороший спосіб вирішення: https://chrome.google.com/webstore/detail/open-in-ie/iajffemldkkhodaedkcpnbpfabiglmdi

Це не ідеальне виправлення, оскільки замість натискання на посилання користувачам доведеться клацнути правою кнопкою миші та вибрати Open у IE, але це принаймні робить посилання функціональним.

Однак слід зазначити одне, що в IE10 (і IE9 після певної точки оновлення) вам доведеться додати сайт до своїх довірених сайтів (Параметри Інтернету> Безпека> Довірені сайти). Якщо сайт не на надійних сайтах, посилання file: // також не працює в IE.


1
Я бачив таку ж поведінку в IE11. Вам доведеться додати в список надійних сайтів, щоб він працював.
члени

плагін не сумісний із останньою версією Chrome
Yannick Smits

1

Це не насправді неприємність, але спосіб вирішити місцеве посилання в хромі, використовуючи python.

Скопіюйте локальне посилання, яке ви хочете запустити, а потім запустіть код нижче (за допомогою ярлика), воно відкриє ваше посилання.

import win32clipboard
import os

win32clipboard.OpenClipboard()
clipboard_data= win32clipboard.GetClipboardData()
win32clipboard.CloseClipboard()

os.system("start "+clipboard_data)

0

Я щойно зіткнувся з тією ж проблемою і знайшов хромоване розширення Open IE .
Це єдине, що працює для мене (Chrome V46 & V52). Єдиним недоліком є ​​те, що вам потрібно встановити додаткову програму, значить, вам потрібні права адміністратора.


1
Відкрити IE відкриє IE. Чому б не використовувати IE в першу чергу. Однозначно не обхід.
Майк

тому що IE застарів, далеко не такий goog, як FF або Chrome, але є деякі внутрішні додатки / сайти, які стилі ретрансляції на IE
Стефан,

0

Сподіваємось, це допомагає іншим в умовах підприємства шукати рішення. Моє рішення після довгого майстерності полягало в наступному:

Виконайте наступні посилання, щоб встановити застаріле розширення веб-переглядача та параметри gpo: https://support.google.com/chrome/a/answer/3019558?hl=uk&ref_topic=3062034

Увімкнено застаріле переспрямування браузера для "file: //" через налаштування chrome gpo Google Chrome -> Підтримка застарілого браузера -> "Веб-сайти, які відкриються в альтернативному веб-переглядачі"

Налаштуйте gpo також для встановлення розширення: https://chrome.google.com/webstore/detail/enable-local-file-links/nikfmfgobenbhmocjaaboihbeocackld, що перенаправляє файл: // посилання на обхід хромованого файлу: // блок посилань.

Розширення відкриває посилання, які потім запускають Google Chrome для відкриття посилання в Internet Explorer. В результаті IE відкриває вікно, потім відкриває файл / папку для користувача, потім IE закривається.


3
термін дії посилань закінчується. Опублікуйте основні речі тут, щоб зберегти відповідь у майбутньому.
ZF007
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.