PHPStorm - Недопустимое имя дочернего файла
Я пытаюсь синхронизировать мой локальный проект PHPStorm с моего ПК с Windows 7 с моим сервером Ubuntu.
Когда я пытаюсь подключиться к любому соединению (например, "Проверить соединение SFTP" ), он терпит неудачу с
Invalid descendent file name "C:\nppdf32Log\debuglog.txt"
указанная папка не существует на моей машине Windows и, конечно же, не на моем сервере Ubuntu.
Даже самая основная операция, связанная с подключением к серверу Ubuntu, из-за этого терпит неудачу - поддержка Jetbrains предложила спросить здесь, так же как у кого есть подсказка?
Ответы
Ответ 1
У вас есть файл на вашем сервере Ubuntu с этим именем C:\nppdf32Log\debuglog.txt
. ДА - это на Ubuntu и YES - это фактически имя файла, а не полный путь (Linux допускает символы :
и \
в именах файлов).
К сожалению, такое имя файла недействительно в Windows, а библиотека, используемая для связи SFTP в PhpStorm, не позволяет обрабатывать такие файлы каким-либо образом (да, она действительна как полный путь, но не как только имя файла).
Решение состоит в том, чтобы подключиться к вашему SFTP с помощью другой программы (например, FileZilla) и удалить этот файл. После этого вы сможете продолжить работу с встроенными SFTP-функциями PhpStorm.
P.S.
Такой файл обычно создается Firefox на Linux (google, что имя файла для дополнительной информации).
https://askubuntu.com/questions/144408/what-is-the-file-c-nppdf32log-debuglog-txt
Поддержка Jetbrains предложила здесь
Это странно (и мне сложно поверить в это) - они должны точно знать о такой проблеме - вы не первый, кто сталкивается с той же ошибкой.
В любом случае - это билет для просмотра после - надеюсь, что используемая библиотека (для связи SFTP) позволит в будущем лучше справляться с такими ситуациями.
http://youtrack.jetbrains.com/issue/WI-2449
Ответ 2
Я встретился с той же проблемой,
но я включил протоколирование ошибок (описание здесь https://devnet.jetbrains.com/docs/DOC-1202)
и я увидел, что создал файл с неправильным именем
![введите описание изображения здесь]()
Ответ 3
У меня была такая же проблема, но это было не из-за Firefox, и я задаюсь вопросом, может ли первоначальный вопросник совершить ту же ошибку, что и при настройке его xdebug.
Как новичок, установив значение для xdebug.remote_log
в моем php.ini
(фактически в отдельном файле xdebug.ini), я использовал путь к файлу Windows для своего проекта на своей локальной машине. Зачем? Потому что значение, называемое "remote_log", поэтому я ошибочно считал, что ему нужен путь на моем компьютере с Windows, который я считал очень странным в то время. Но я новичок в удаленной отладке, поэтому... Ой.
Использование пути к окну неверно:
xdebug.remote_log="C:\Users\Buttle\PhpstormProjects\xdebug_log.txt"
И это приводит к:
/вар/WWW/MyProject/ C:\Users\Баттл\PhpstormProjects\xdebug_log.txt
(полужирная часть - это фактическое имя файла)
Это правильно:
xdebug.remote_log = "xdebug_log.txt"
И предположительно результат:
/вар/WWW/MyProject/ xdebug_log.txt
(полужирная часть - это фактическое имя файла)
Похоже, что Xdebug сохраняет этот файл журнала внутри папки, откуда пришел запрошенный php файл (в моем случае, файл project.php моего проекта).
Я предполагаю, что если я введу допустимый путь к Linux, я могу разместить файл где-то еще. Например.
Это может сработать:
xdebug.remote_log="/var/www/xdebug_log.txt"
Итак, это решает две проблемы: 1.) почему черт не xdebug ничего не записывает на свой сервер (он делает!) 2.) проблема с файлом потомков.