web-dev-qa-db-fra.com

Google Chrome peut-il ouvrir des liens locaux?

Je relie sur une page intranet à un fichier local sur un lecteur partagé:

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

Cela fonctionne dans IE et Firefox avec un addon appelé lien local.

Comment puis-je obtenir cette ouverture dans Google Chrome?

Merci

130
Andy

Pour des raisons de sécurité, vous ne pouvez pas créer de lien vers file:/// à partir d'un document HTML qui n'est pas lui-même un file:///.

36
Thomas Bonini

Cette question est datée, mais j’ai eu le même problème tout à l’heure, la solution que j’ai trouvée était de mapper un répertoire virtuel dans IIS sur le lecteur en réseau avec les documents, l’URL devenant ainsi un convivial "http://" adresse.

Définition de répertoires virtuels:

IIS:

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

Apache:

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

À votre santé!

19
Guilherme Amorim

D'après ce que j'ai vu de ceci, ce qui suit est vrai pour Firefox et Chrome;

1) Si vous avez une page HTML ouverte depuis un hôte distant, alors file:// liens ne sera pas travail, c’est-à-dire que votre barre d’adresse indique http://someserver.domain et que la page contient un lien tel que <a href="file:///S:/sharedfile.txt">

2) Si vous avez une page HTML ouverte à partir de votre hôte local, alors file:// liens seront fonctionne, c’est-à-dire que votre barre d’adresse lit file:///C:/mydir/index.html et que la page contient un lien tel que <a href="file:///S:/sharedfile.txt">

Pour Internet Explorer, le point 1) n'est pas vrai. Vous pouvez accéder à un fichier de votre hôte local à l'aide de la syntaxe de lien file:// à partir d'une page Web située sur un hôte distant. Ceci est considéré comme une faille de sécurité dans IE(Par qui? Références?) (et il y en a aussi dans IE8) car a l'hôte distant peut accéder aux fichiers sur votre ordinateur local à votre ins .... ils doivent certes avoir de la chance avec le nom de fichier, mais il y a plein de fichiers portant le même nom là-bas avec le potentiel de contenir des informations personnelles/privées.

11
Rory

LocalLinks semble maintenant être obsolète.

LocalExplorer semble avoir pris sa place et fournit des fonctionnalités similaires:

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

Il s’agit d’un plug-in chrome qui remplace les liens file:// par des liens localexplorer://, associé à un gestionnaire de protocole installable qui intercepte les liens localexplorer://.

La meilleure chose que je puisse trouver disponible actuellement, je n’ai aucune affiliation avec le développeur.

7
user1641172

L'extension LocalLinks de la réponse la plus populaire ne fonctionnait pas pour moi (étant donné que j'essayais d'utiliser fichier: // pour ouvrir un répertoire dans Windows Explorer, pas un fichier), j'ai donc envisagé une autre solution de contournement. J'ai trouvé que cette extension "Open in IE" est une bonne solution de contournement: https://chrome.google.com/webstore/detail/open-in-ie/iajffemldkkhodaedkcpnbpfabiglmdi

Ce n'est pas une solution idéale, car au lieu de cliquer sur le lien, les utilisateurs devront cliquer avec le bouton droit de la souris et choisir Ouvrir dans IE, mais cela rend au moins le lien fonctionnel.

Une chose à noter cependant, dans IE10 (et IE9 après un certain point de mise à jour), vous devrez ajouter le site à vos sites de confiance (Options Internet> Sécurité> Sites de confiance). Si le site ne se trouve pas sur des sites de confiance, le lien fichier: // ne fonctionne pas non plus dans IE.

6
BryPie

Ce n'est pas vraiment une réponse mais une solution de contournement pour ouvrir un lien local dans chrome en utilisant python.

Copiez le lien local que vous souhaitez exécuter puis exécutez le code ci-dessous (à l’aide d’un raccourci), il ouvrira votre lien.

import win32clipboard
import os

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

os.system("start "+clipboard_data)
1
JinSnow

Je viens de rencontrer le même problème et j'ai trouvé l'extension chrome Open IE .
C’est le seul qui fonctionne pour moi (Chrome V46 & V52). Le seul inconvénient est que vous devez installer un programme supplémentaire, ce qui signifie que vous devez disposer de droits d'administrateur.

0
Stefan