2009-09-02 5 views
38

Nur eine einfache HTML-Link Frage verknüpfen.ein UNC/Netzlaufwerk auf einer HTML-Seite

Ich habe eine Intranet-Setup, und ich muss einige Netzlaufwerke verbinden. Sie basieren auf Laufwerken wie \ server_drive \ blahblah \ doc.docx

Mit file: // nicht auf entweder IE8 oder Firefox funktioniert. Wie kann ich auf diese Dateien verlinken?

Antwort

72

zu einem UNC-Pfad von einem HTML-Dokument zu verknüpfen, verwenden Sie Datei: ///// (ja, das ist fünf Schrägstriche).

Datei: /////server/path/to/file.txt

Beachten Sie, dass dies in IE und Outlook/Word-nützlichsten ist. Es wird absichtlich nicht in Chrome oder Firefox funktionieren - die Verbindung wird stumm gescheitert. Ein paar Worte von den Mozilla team:

Aus Sicherheitsgründen, Mozilla Anwendungen blockieren Links zu lokalen Dateien (und Verzeichnissen) von entfernten Dateien.

Und weniger direkt von Google:

Firefox und Chrome nicht öffnen "file: //" Links von Seiten, die von außerhalb der lokalen Maschine entstanden. Dies ist eine Designentscheidung, die von diesen Browsern getroffen wurde, um die Sicherheit zu verbessern.

Der Mozilla Artikel enthält eine Reihe von Client-Einstellungen können Sie dieses Verhalten in Firefox außer Kraft setzen bedienen, und es gibt Erweiterungen für bothbrowsers diese Einschränkung aufzuheben.

+1

Doesn Ich arbeite in IE9 –

+2

Microsoft sagen, dass die Fünf-Schrägstrich-Sache falsch ist. Stattdessen sollte Ihr Beispiel "file: //server/path/to/file.txt" sein. Link: https://blogs.msdn.microsoft.com/ie/2006/12/06/file-uris-in-windows/ –

4

Setup-IIS auf dem Netzwerk-Server und ändern Sie den Pfad zu http://server/path/to/file.txt

EDIT: Stellen Sie sicher, das Durchsuchen von Verzeichnissen in IIS

+0

Ich habe ähnliches Problem. Wenn Sie sagen, ändern Sie den Pfad, ist dies in einem virtuellen Verzeichnis? Wenn ich versuche, mit "http" auf meine Freigabe zuzugreifen, bekomme ich eine 404, aber wenn ich im Browser file: /////server/path/to/file.txt verwende, funktioniert es. Ich benötige einen HTTP-Zugang, da dieser Link über Markdown gerendert wird. Ich habe das Durchsuchen von Verzeichnissen auf dem Server aktiviert. Der physische Pfad unter Erweiterte Einstellungen zeigt auf die Freigabe. – DBS

+0

Als ich diese Antwort geschrieben habe, war mein Vorschlag, IIS auf den Netzwerkserver zu stellen und dann die URL Ihres Inhalts so zu ändern, dass er auf den Webserver verweist. Sie können IIS auch so konfigurieren, dass virtuelle Verzeichnisse zu Netzwerkfreigaben zugeordnet werden. Es müssen jedoch Berechtigungen zwischen IIS und der Netzwerkfreigabe berücksichtigt werden. – bryanbcook

2

Alternative (Insert Tooltip Benutzer) ermöglichen:

<style> a.tooltips {position: relative; display: inline;} a.tooltips span { position: absolute; width:240px; color: #FFFFFF; background: #000000; height: 30px; line-height: 30px; text-align: center; visibility: hidden; border-radius: 6px; } a.tooltips span:after { content: ''; position: absolute; top: 100%; left: 50%; margin-left: -8px; width: 0; height: 0; border-top: 8px solid #000000; border-right: 8px solid transparent; border-left: 8px solid transparent; } a:hover.tooltips span { visibility: visible; opacity: 0.8; bottom: 30px; left: 50%; margin-left: -76px; z-index: 999; } </style> 
    <a class="tooltips" href="#">\\server\share\docs<span>Copy link and open in Explorer</span></a>