"File: //" - Links funktionieren auf einer WordPress-Site, nicht jedoch auf der anderen. Beide laufen auf demselben Server

2075
Randy

Ich habe zwei verschiedene WordPress-Sites auf demselben Server. Beide enthalten Links zu Dateien in unserem internen Netzwerk, die über das file://Protokoll verbunden sind.

Hier ist das Problem: Auf einer der Websites file://funktionieren die Links in Internet Explorer einwandfrei. Ich klicke auf den Link und der Ordner wird in einem neuen Fenster geöffnet. Auf der anderen Seite file://passiert jedoch absolut nichts, wenn ich auf die Links klicke. Was kann ich tun, damit dies auf beiden Websites funktioniert?

Die Site mit den Links zu den Arbeitsdateien verwendet WordPress Version 3.2.1

Die Site mit den nicht funktionierenden Dateilinks verwendet Version 3.5.1

Hier ist ein Beispiellink file://, mit dem ich dieses Problem habe:

file://servername/sharefolder$/sub1/sub2/sub3 
0
Können Sie ein Beispiel für einen Link geben, der auf einer Seite funktioniert, auf der anderen jedoch nicht? (Durch Einfügen beider Links hier zum Vergleich, wobei private Pfade ersetzt wurden.) AmadeusDrZaius vor 9 Jahren 2
Klar, entschuldige mich dafür, dass ich das nicht aufgenommen habe. its: file: // Servername / Anteilsordner $ / sub1 /₂ /₃ Randy vor 9 Jahren 0
Randy, Kommentare sind für solche Details nicht der richtige Ort. Ich habe Ihre Frage bearbeitet, um ein Beispiel hinzuzufügen. Sie sollten jedoch immer beachten, was jemand in den Kommentaren verlangt, und dann Ihre Frage bearbeiten, um die Details anzugeben. Der Grund ist, dass die Kommentare das sind, was die Leute lesen und darauf achten. Die Kommentare sind klein und aus einem bestimmten Grund verfügbar. JakeGould vor 9 Jahren 0

1 Antwort auf die Frage

0
JakeGould

Ohne den vollständigen Pfad zu kennen - oder ein Pseudo-Beispiel für den Pfad, in dem Sie bestimmte Daten für den Datenschutz kastrieren - ist es schwer zu sagen, worum es geht. Im Allgemeinen erfordert das file://URI- Schema (Uniform Resource Identifier) einen Hostnamen. Wenn kein Host mit dem file://URI verbunden ist, sollten drei Schrägstriche ( ///) und nicht zwei ( //) vorhanden sein.

Wenn Sie beispielsweise auf eine Datei mit dem Pfad /hey/there/filein Ihrem localhostSetup zugreifen möchten, könnte die URL folgendermaßen lauten:

file://localhost/hey/there/file 

Oder könnte das sein:

file:///hey/there/file 

Es könnte jedoch auch ein Problem mit der Art und Weise geben, wie WordPress 3.5.1 einen file://URI behandelt, im Vergleich zu WordPress 3.2.1. Dieses kleine Chunklet von Code auf GitHubGist (von „Rosshanney“) scheint das Problem anzugehen, indem eine einfache Plugin-Methode erstellt wird, die es erlaubt file, ein Teil des Kerns kses_allowed_protocolsvon WordPress zu sein:

<?php /* Plugin name: Allow file protocol */  function rh_allow_file_protocol( $protocols ) { $protocols[] = 'file'; return $protocols; }  add_filter( 'kses_allowed_protocols', 'rh_allow_file_protocol' ) 
Danke für diesen Jake, aber ich habe es gerade ausprobiert und das Problem wurde dadurch nicht behoben. Ich habe ein Beispiel für den Link hinzugefügt, der auf der anderen Site in einer Antwort auf einen Kommentar oben funktioniert. Randy vor 9 Jahren 0