If your FTP client connects and logs in successfully, but then hangs, times out, or shows an empty file listing when you try to open a folder, the issue is almost always a mismatch between active and passive connection modes, not a problem with your login details.
Why This Happens
FTP uses two separate connections: one to send commands like logging in, and another to actually transfer the file list or file data. When you log in, that first connection works fine. But if your FTP client and your network cannot agree on how to open the second connection, it stalls right when you try to list files or upload something.
Most modern networks, including those behind routers, firewalls, or mobile hotspots, work better with passive mode than active mode. Passive mode lets your client initiate both connections instead of waiting for the server to connect back to you.
How to Fix It
1. Force Passive Mode in Your FTP Client
In most FTP clients this setting is just one menu away. In FileZilla:
- Open File then Site Manager.
- Select your saved connection, or create a new one.
- Click the Transfer Settings tab.
- Under Transfer Mode, select Passive.
- Click OK and reconnect.
Other clients such as Cyberduck, WinSCP, and Transmit all have an equivalent "Transfer Mode" or "Connection Mode" setting, usually found in the site or connection properties.
2. Check Your Firewall or Router
If passive mode is already selected and you are still stuck, your firewall, antivirus, or router may be blocking the random high-numbered ports that passive FTP uses for the data connection. Try the following:
- Temporarily disable your firewall or antivirus to confirm it is the cause, then re-enable it and add an exception for your FTP client.
- Connect from a different network, for example your phone's hotspot, to rule out a restrictive office or ISP firewall.
- Restart your router, since some consumer routers mishandle long-lived FTP sessions.
If you manage a corporate or office network, ask whoever controls the firewall to allow outbound passive FTP connections rather than opening only port 21. Blocking the command port alone while leaving the data ports closed is a common cause of "connects but then hangs" issues.
3. Confirm You Are Using the Correct Port and Protocol
Make sure you are connecting on port 21 for standard FTP, and that you have not accidentally selected FTPS or SFTP in your client while entering plain FTP server details, or the reverse. Mixing these up often produces the same stalled, empty-listing symptom as a passive mode issue.
This fix applies the same way whether your hosting account is on cPanel or DirectAdmin, since the problem is almost always on the client or network side, not the control panel itself.
Still Not Working? Switch to SFTP
If passive mode and firewall checks do not solve it, consider using SFTP instead. SFTP runs over a single encrypted connection, so it avoids the active and passive port issue entirely, and it is more secure than plain FTP.
See FTP vs SFTP: Which Should You Use to Transfer Files to Your Website? for a comparison, or check your hosting account's connection details to switch.