ปัญหา FTP Cannot List Directory เป็น Error ที่พบได้บ่อยเวลาคุณเชื่อมต่อ FTP Server ผ่านโปรแกรมอย่าง FileZilla, WinSCP หรือ Cyberduck แล้วไม่สามารถแสดงรายการไฟล์ในโฟลเดอร์ได้
อาการที่พบคือ Login เข้า FTP ได้ แต่ไม่สามารถเปิดโฟลเดอร์หรือดูไฟล์ใน Server ได้
ปัญหานี้มักเกี่ยวข้องกับ Permission ของโฟลเดอร์, Firewall หรือ Passive Mode ของ FTP
บทความนี้จะอธิบาย สาเหตุของ FTP Cannot List Directory และวิธีแก้แบบมืออาชีพ
① 🔍 FTP Cannot List Directory คืออะไร
FTP Cannot List Directory หมายถึง
FTP Client เชื่อมต่อกับ Server ได้ แต่ ไม่สามารถโหลดรายการไฟล์ในโฟลเดอร์ได้
ตัวอย่างข้อความ Error
Cannot list directory
Directory listing failed
Could not retrieve directory listing
อาการที่พบ
-
Login FTP ได้
-
ไม่เห็นไฟล์ในโฟลเดอร์
-
เปิดโฟลเดอร์ไม่ได้
② ⚠️ สาเหตุหลักที่ทำให้ FTP Cannot List Directory
ปัญหานี้มักเกิดจาก 5 สาเหตุหลัก
📂 1 Permission ของโฟลเดอร์ไม่ถูกต้อง
ถ้า Permission ของโฟลเดอร์ไม่อนุญาตให้ดูไฟล์
FTP จะไม่สามารถแสดงรายการไฟล์ได้
ค่ามาตรฐานของโฟลเดอร์
755
🔥 2 Firewall บล็อก FTP Data Connection
Firewall อาจบล็อก
-
FTP Data Port
-
Passive Port
ทำให้ FTP ไม่สามารถโหลดรายการไฟล์
📡 3 Passive Mode ตั้งค่าไม่ถูกต้อง
FTP มี 2 โหมด
-
Active Mode
-
Passive Mode
ถ้าใช้โหมดผิด
การแสดงไฟล์จะล้มเหลว
🌐 4 Router บล็อก FTP
Router บางตัวมีฟีเจอร์
FTP ALG
ซึ่งอาจทำให้ FTP ทำงานผิดพลาด
⚙️ 5 Server Configuration ผิด
FTP Server อาจตั้งค่า
-
Passive Port Range
-
Directory Access
ผิดพลาด
③ 🔧 วิธีแก้ FTP Cannot List Directory
ให้ทำตามขั้นตอนนี้
✔️ ขั้นตอนที่ 1 ตรวจสอบ Permission ของโฟลเดอร์
ใน FileZilla
คลิกขวาที่โฟลเดอร์
เลือก
File Permissions
ตั้งค่าเป็น
755
✔️ ขั้นตอนที่ 2 ใช้ Passive Mode
ใน FileZilla
ไปที่
Edit → Settings → FTP
เลือก
Passive Mode
✔️ ขั้นตอนที่ 3 ปิด Firewall ชั่วคราว
ลองปิด
-
Windows Firewall
-
Antivirus Firewall
แล้วลองเชื่อมต่อ FTP ใหม่
✔️ ขั้นตอนที่ 4 ปิด FTP ALG ใน Router
เข้าไปตั้งค่า Router
ปิด
FTP ALG
✔️ ขั้นตอนที่ 5 ใช้ SFTP แทน FTP
ถ้า FTP ยังมีปัญหา
แนะนำให้ใช้
SFTP
ซึ่งใช้ Port
22
กลางบทความนี้ต้องบอกว่า Error แบบ FTP Cannot List Directory เป็นปัญหาที่ทีม COMSIAM พบได้บ่อยมากเวลาลูกค้าเชื่อมต่อ FTP ผ่านเครือข่ายองค์กรหรือ Router ที่มี Firewall
④ 📡 ความแตกต่างระหว่าง FTP และ SFTP
FTP
-
ใช้ Port 21
-
ไม่มีการเข้ารหัส
SFTP
-
ใช้ Port 22
-
มีการเข้ารหัสข้อมูล
จึงปลอดภัยกว่า
⑤ 🔧 วิธีป้องกัน FTP Directory Error
เพื่อป้องกันปัญหานี้ในอนาคต
ควร
-
ใช้ Passive Mode
-
ตั้งค่า Permission ให้ถูกต้อง
-
ปิด FTP ALG
สรุป
ปัญหา FTP Cannot List Directory
มักเกิดจาก
-
Permission โฟลเดอร์ผิด
-
Firewall บล็อก FTP
-
Passive Mode ผิด
วิธีแก้ที่ได้ผลเร็วที่สุดคือ
1 ใช้ Passive Mode
2 ตรวจสอบ Permission
3 ปิด FTP ALG ใน Router
ทำครบตามนี้ส่วนใหญ่จะสามารถเปิดดูไฟล์ใน FTP ได้ปกติ