2014-02-22 6 views
10

Ich versuche mein lokales PHPStorm Projekt von meinem Windows 7 PC mit meinem Ubuntu Server zu synchronisieren.PHPSstorm - Ungültiger Name der abgeleiteten Datei

Wenn ich jede Art von Verbindung versuchen (zB „Test SFTP-Verbindung“), schlägt es mit

Invalid descendent file name "C:\nppdf32Log\debuglog.txt"

dem Ordner existiert nicht auf meinem Windows-Rechner erwähnt, und natürlich nicht auf meinem Ubuntu-Server.

Selbst die einfachste Verbindung mit dem Ubuntu-Server schlägt fehl - die Jetbrains-Unterstützung schlägt vor, hier nachzufragen, also hat jemand eine Ahnung?

Antwort

30

Sie haben eine Datei auf Ihrem Ubuntu-Server mit dem Namen C:\nppdf32Log\debuglog.txt. JA - es ist auf Ubuntu und JA - es ist eigentlich ein Dateiname und nicht vollständigen Pfad (Linux ermöglicht : und \ Zeichen in Dateinamen).

Leider ist solcher Dateiname ist ungültig unter Windows und Bibliothek für SFTP-Kommunikation in PhpStorm verwendet erlaubt es nicht, solche Dateien in irgendeiner Weise zu verarbeiten (ja, es ist gültig als vollständiger Pfad aber nicht als Dateinamen allein).

Die Lösung besteht darin, mit einem anderen Programm (z. B. FileZilla) eine Verbindung zu Ihrem SFTP herzustellen und diese Datei zu löschen. Danach können Sie mit der in PHPStorm integrierten SFTP-Funktionalität fortfahren.

P.S.
Solche Datei wird normalerweise von Firefox unter Linux erstellt (google diesen Dateinamen für weitere Details).

https://askubuntu.com/questions/144408/what-is-the-file-c-nppdf32log-debuglog-txt


Jetbrains Unterstützung hier vorgeschlagene

fragen Das ist seltsam (und schwer für mich zu glauben) - sie über eine solche Frage sicher wissen sollten - sind Sie nicht erstens, der dem gleichen Fehler gegenübersteht.

In jedem Fall - das ist das Ticket zu beobachten - hoffentlich die verwendete Bibliothek (für SFTP-Kommunikation) wird ermöglichen, solche Situationen in der Zukunft besser zu behandeln.

http://youtrack.jetbrains.com/issue/WI-2449

+0

Sonderbare geschaffen hatte - das war das Problem. Weitere Grabungen fanden mehrere Kopien von Dateien mit diesem Namen - allerdings keine in einem Pfad, der von der sftp-Verbindung berührt werden sollte. Vielen Dank. Oh, und fyi Bildschirm nach dem Einreichen einer Support-Anfrage enthält einen Link zu Stackoverflow - es sagt, sie haben Unterstützung Jungs hören hier auch. – Hippyjim

+0

Soo wir-iird. wtf – r3x

0

Ich hatte das gleiche Problem, aber es war zu Firefox nicht fällig und ich frage mich, ob der ursprüngliche Fragesteller hat den gleichen Fehler gemacht haben könnte ich seine xdebug tat bei der Konfiguration.

Als Neuling, in den Wert für in meinem php.ini (eigentlich in separaten xdebug.ini), habe ich den Windows-Dateipfad zu meinem Projekt auf meinem lokalen Rechner. Warum? Weil der Wert "remote_log" genannt wurde, dachte ich fälschlicherweise, dass er den Pfad auf meiner Windows-Maschine haben wollte, was ich damals für sehr merkwürdig hielt. Aber ich bin neu im Remote-Debugging, also ... Ups.

Verwendung von Windows-Pfad ist falsch:

xdebug.remote_log="C:\Users\Buttle\PhpstormProjects\xdebug_log.txt" 

Und es ergibt sich:

/var/www/myproject/C: \ Benutzer \ Buttle \ PhpstormProjects \ xdebug_log.txt

(der fettgedruckte Teil ist der tatsächliche Dateiname)

Dies ist richtig:

xdebug.remote_log = "xdebug_log.txt"

Und vermutlich ergibt:

/var/www/myproject/xdebug_log.txt

(die fett gedruckten Teil ist der eigentliche Dateiname)

Es scheint, dass Xdebug diese Protokolldatei in dem Ordner speichert, von dem die angeforderte PHP-Datei stammt (in meinem Fall die Datei index.php meines Projekts).

Ich stelle mir vor, wenn ich einen gültigen Linux-Pfad eingeben, könnte ich die Datei woanders ablegen können. Z.B.

Dies könnte funktionieren:

xdebug.remote_log="/var/www/xdebug_log.txt" 

dies löst also 2 Probleme: 1.) Warum hat der Teufel nichts auf seinem Server xdebug log (es funktioniert) 2.) Nachkomme Datei Problem!.

+0

Danke, aber seit der Fehlerbehebung habe ich herausgefunden, dass die Datei von Adobe Reader und nicht von Firefox für mich erstellt wurde - ich vermute, dass einige Anwendungen eine Lib verwenden, die diese Datei erzeugt. Mein Xdebug-Log war * definitiv * mit einem Linux-Pfad! – Hippyjim