PHPStorm - 无法连接到FTPS服务器

时间:2015-11-26 15:13:33

标签: ftp connection phpstorm webstorm

我无法弄清楚如何使用PHPStorm上的FTPS连接到我的网络服务器。

我尝试激活被动模式,然后始终使用LIST命令,但无效。如果PHPStorm无法连接到ftp服务器,FileZilla可以正常工作。

有人知道我必须做什么吗?

以下是日志:

2015-11-26 16:03:51,105 [  66041]  DEBUG - t.connections.RemoteConnection - Opening connection to ftps://my-server.com:21/ 
2015-11-26 16:03:51,148 [  66084]  DEBUG - ains.plugins.webDeployment.ftp - 220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 1 of 50 allowed.
220-Local time is now 16:03. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity. 
2015-11-26 16:03:51,148 [  66084]  DEBUG - ains.plugins.webDeployment.ftp - AUTH TLS 
2015-11-26 16:03:51,169 [  66105]  DEBUG - ains.plugins.webDeployment.ftp - 234 AUTH TLS OK. 
2015-11-26 16:03:51,198 [  66134]   WARN - t.connections.RemoteConnection - Retrying connecting to ftps://my-server.com:21/: 1 iterations 
org.apache.commons.vfs2.FileSystemException: Could not connect to FTPS server on "my-server.com".
    at org.apache.commons.vfs2.provider.ftp.FtpClientFactory$ConnectionFactory.createConnection(FtpClientFactory.java:283)
    at org.apache.commons.vfs2.provider.ftps.FtpsClientFactory.createConnection(FtpsClientFactory.java:59)
    at org.apache.commons.vfs2.provider.ftps.FtpsClientWrapper.createClient(FtpsClientWrapper.java:48)
    at org.apache.commons.vfs2.provider.ftp.FTPClientWrapper.createClient(FTPClientWrapper.java:80)
    at org.apache.commons.vfs2.provider.ftp.FTPClientWrapper.getFtpClient(FTPClientWrapper.java:105)
    at org.apache.commons.vfs2.provider.ftp.FTPClientWrapper.<init>(FTPClientWrapper.java:58)
    at org.apache.commons.vfs2.provider.ftps.FtpsClientWrapper.<init>(FtpsClientWrapper.java:41)
    at org.apache.commons.vfs2.provider.ftps.FtpsFileProvider.doCreateFileSystem(FtpsFileProvider.java:52)
    at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.getFileSystem(AbstractOriginatingFileProvider.java:102)
    at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:80)
    at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:64)
    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:790)
    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:712)
    at com.jetbrains.plugins.webDeployment.connections.RemoteConnectionPool.createConnection(RemoteConnectionPool.java:159)
    at com.jetbrains.plugins.webDeployment.connections.RemoteConnectionManager.openConnection(RemoteConnectionManager.java:103)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.ServerTreeContext.getConnection(ServerTreeContext.java:88)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.ServerTreeNode.computeFile(ServerTreeNode.java:271)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.ServerTreeNode.getChildren(ServerTreeNode.java:135)
    at com.intellij.ui.treeStructure.SimpleTreeStructure.getChildElements(SimpleTreeStructure.java:25)
    at com.intellij.ide.util.treeView.AbstractTreeUi$32.perform(AbstractTreeUi.java:1624)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.ide.util.treeView.AbstractTreeUi.execute(AbstractTreeUi.java:1830)
    at com.intellij.ide.util.treeView.AbstractTreeUi.getChildrenFor(AbstractTreeUi.java:1621)
    at com.intellij.ide.util.treeView.AbstractTreeUi.access$4700(AbstractTreeUi.java:62)
    at com.intellij.ide.util.treeView.AbstractTreeUi$47.perform(AbstractTreeUi.java:2708)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.ide.util.treeView.AbstractTreeUi.execute(AbstractTreeUi.java:1830)
    at com.intellij.ide.util.treeView.AbstractTreeUi.access$2500(AbstractTreeUi.java:62)
    at com.intellij.ide.util.treeView.AbstractTreeUi$58$1.perform(AbstractTreeUi.java:3386)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.WebServerTreeBuilder.runBackgroundLoading(WebServerTreeBuilder.java:90)
    at com.intellij.ide.util.treeView.AbstractTreeUi$58.perform(AbstractTreeUi.java:3377)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.ide.util.treeView.AbstractTreeUi.execute(AbstractTreeUi.java:1830)
    at com.intellij.ide.util.treeView.AbstractTreeUi.access$2500(AbstractTreeUi.java:62)
    at com.intellij.ide.util.treeView.AbstractTreeUi$59.perform(AbstractTreeUi.java:3442)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.util.concurrency.WorkerThread.run(WorkerThread.java:108)
    at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:400)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
    at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)
Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:154)
    at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1991)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1098)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1344)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1371)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1355)
    at org.apache.commons.net.ftp.FTPSClient.sslNegotiation(FTPSClient.java:269)
    at org.apache.commons.net.ftp.FTPSClient._connectAction_(FTPSClient.java:211)
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:183)
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:203)
    at org.apache.commons.vfs2.provider.ftp.FtpClientFactory$ConnectionFactory.createConnection(FtpClientFactory.java:207)
    ... 44 more
2015-11-26 16:03:51,198 [  66134]   WARN - i.remotebrowser.ServerTreeNode - Could not connect to FTPS server on "my-server.com". 
org.apache.commons.vfs2.FileSystemException: Could not connect to FTPS server on "my-server.com".
    at org.apache.commons.vfs2.provider.ftp.FtpClientFactory$ConnectionFactory.createConnection(FtpClientFactory.java:283)
    at org.apache.commons.vfs2.provider.ftps.FtpsClientFactory.createConnection(FtpsClientFactory.java:59)
    at org.apache.commons.vfs2.provider.ftps.FtpsClientWrapper.createClient(FtpsClientWrapper.java:48)
    at org.apache.commons.vfs2.provider.ftp.FTPClientWrapper.createClient(FTPClientWrapper.java:80)
    at org.apache.commons.vfs2.provider.ftp.FTPClientWrapper.getFtpClient(FTPClientWrapper.java:105)
    at org.apache.commons.vfs2.provider.ftp.FTPClientWrapper.<init>(FTPClientWrapper.java:58)
    at org.apache.commons.vfs2.provider.ftps.FtpsClientWrapper.<init>(FtpsClientWrapper.java:41)
    at org.apache.commons.vfs2.provider.ftps.FtpsFileProvider.doCreateFileSystem(FtpsFileProvider.java:52)
    at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.getFileSystem(AbstractOriginatingFileProvider.java:102)
    at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:80)
    at org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:64)
    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:790)
    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:712)
    at com.jetbrains.plugins.webDeployment.connections.RemoteConnectionPool.createConnection(RemoteConnectionPool.java:159)
    at com.jetbrains.plugins.webDeployment.connections.RemoteConnectionManager.openConnection(RemoteConnectionManager.java:103)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.ServerTreeContext.getConnection(ServerTreeContext.java:88)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.ServerTreeNode.computeFile(ServerTreeNode.java:271)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.ServerTreeNode.getChildren(ServerTreeNode.java:135)
    at com.intellij.ui.treeStructure.SimpleTreeStructure.getChildElements(SimpleTreeStructure.java:25)
    at com.intellij.ide.util.treeView.AbstractTreeUi$32.perform(AbstractTreeUi.java:1624)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.ide.util.treeView.AbstractTreeUi.execute(AbstractTreeUi.java:1830)
    at com.intellij.ide.util.treeView.AbstractTreeUi.getChildrenFor(AbstractTreeUi.java:1621)
    at com.intellij.ide.util.treeView.AbstractTreeUi.access$4700(AbstractTreeUi.java:62)
    at com.intellij.ide.util.treeView.AbstractTreeUi$47.perform(AbstractTreeUi.java:2708)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.ide.util.treeView.AbstractTreeUi.execute(AbstractTreeUi.java:1830)
    at com.intellij.ide.util.treeView.AbstractTreeUi.access$2500(AbstractTreeUi.java:62)
    at com.intellij.ide.util.treeView.AbstractTreeUi$58$1.perform(AbstractTreeUi.java:3386)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.jetbrains.plugins.webDeployment.ui.remotebrowser.WebServerTreeBuilder.runBackgroundLoading(WebServerTreeBuilder.java:90)
    at com.intellij.ide.util.treeView.AbstractTreeUi$58.perform(AbstractTreeUi.java:3377)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.ide.util.treeView.AbstractTreeUi.execute(AbstractTreeUi.java:1830)
    at com.intellij.ide.util.treeView.AbstractTreeUi.access$2500(AbstractTreeUi.java:62)
    at com.intellij.ide.util.treeView.AbstractTreeUi$59.perform(AbstractTreeUi.java:3442)
    at com.intellij.ide.util.treeView.TreeRunnable.run(TreeRunnable.java:33)
    at com.intellij.util.concurrency.WorkerThread.run(WorkerThread.java:108)
    at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:400)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
    at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)
Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:154)
    at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1991)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1098)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1344)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1371)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1355)
    at org.apache.commons.net.ftp.FTPSClient.sslNegotiation(FTPSClient.java:269)
    at org.apache.commons.net.ftp.FTPSClient._connectAction_(FTPSClient.java:211)
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:183)
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:203)
    at org.apache.commons.vfs2.provider.ftp.FtpClientFactory$ConnectionFactory.createConnection(FtpClientFactory.java:207)
    ... 44 more

2 个答案:

答案 0 :(得分:1)

我有完全相同的问题。 我将Type从“FTPS”切换到“FTP”。在此之后,我点击了“高级选项...”并选择了“被动模式”“始终使用LIST命令”。

在此之后,连接工作得很好。

这对我来说是一个谜,为什么我可以连接到选择了FTP的FTPS主机。

PhpStorm版本:2016.2.1

答案 1 :(得分:0)

我遇到了同样的问题。 转到文件 - &gt;设置... - &gt;部署。选择FTP连接,然后单击高级选项...按钮。勾选被动模式然后保存。 按照路径: enter image description here