วิธีอัปโหลดไฟล์ขึ้น Hosting ด้วย FTP และ File Manager

หลังจดโดเมนและสมัคร Hosting แล้ว ขั้นตอนต่อไปคือการนำไฟล์เว็บขึ้นไปวางบนเซิร์ฟเวอร์ ซึ่งทำได้หลายวิธีและแต่ละวิธีเหมาะกับสถานการณ์ต่างกัน — FTP เหมาะกับการอัปโหลดไฟล์จำนวนมากทีเดียว File Manager ใน DirectAdmin เหมาะกับการแก้ไฟล์ทีละไฟล์อย่างรวดเร็ว ส่วน SFTP เน้นความปลอดภัยด้วยการเข้ารหัส บทความนี้อธิบายทั้งสามวิธีและช่วยเลือกให้เหมาะกับงานของคุณ

วิธีที่ 1: FTP ผ่าน FileZilla (แนะนำสำหรับไฟล์จำนวนมาก)

  1. ดาวน์โหลด FileZilla Client จาก filezilla-project.org (ฟรี)
  2. เปิด FileZilla → File → Site Manager → New Site
  3. กรอกข้อมูล:
    • Host: ชื่อโดเมนหรือ IP ของ Hosting
    • Protocol: FTP - File Transfer Protocol
    • Logon Type: Normal
    • User/Password: ข้อมูล FTP จาก DirectAdmin
  4. คลิก Connect จะเห็นไฟล์บน Server ด้านขวา
  5. ลากไฟล์จากเครื่องซ้ายมือไปยัง public_html ด้านขวา

เปรียบเทียบสามวิธีอัปโหลดไฟล์

แต่ละวิธีมีข้อดีและข้อเสียต่างกัน ตารางด้านล่างช่วยตัดสินใจได้อย่างรวดเร็ว:

วิธี เหมาะกับงาน ความปลอดภัย ความเร็ว
FTP (FileZilla) ไฟล์จำนวนมาก เว็บไซต์เต็มรูปแบบ ปานกลาง (ไม่เข้ารหัส) เร็ว รองรับ parallel upload
File Manager แก้ไขไฟล์ 1-5 ไฟล์ ไม่ต้องติดตั้งโปรแกรม ดี (ผ่าน HTTPS) ปานกลาง จำกัด upload size
SFTP งาน production ที่ต้องการความปลอดภัยสูง ดีที่สุด (SSH Encrypted) เร็ว เท่า FTP

วิธีที่ 2: File Manager ใน DirectAdmin (แนะนำสำหรับงานเร็ว)

  1. ล็อกอิน DirectAdmin
  2. ไปที่ Files → File Manager
  3. ไปที่โฟลเดอร์ public_html
  4. คลิกปุ่ม Upload ด้านบน
  5. เลือกไฟล์จากเครื่อง หรือ Drag & Drop
  6. รอจนอัปโหลดเสร็จ ไฟล์จะปรากฏในโฟลเดอร์

วิธีที่ 3: SFTP (ปลอดภัยกว่า FTP ปกติ)

SFTP (SSH File Transfer Protocol) ส่งข้อมูลแบบ Encrypted ทำให้ปลอดภัยกว่า FTP ปกติ:

  1. ใน FileZilla เลือก Protocol: SFTP - SSH File Transfer Protocol
  2. Port: 22
  3. ใช้ Username/Password เดียวกับ SSH ของ Hosting

สร้างบัญชี FTP ใน DirectAdmin

DirectAdmin รองรับการสร้างบัญชี FTP แยกต่างหากได้หลายบัญชี ซึ่งสะดวกมากเมื่อต้องให้นักพัฒนาหรือดีไซเนอร์เข้าถึงเพียงบางโฟลเดอร์:

  1. ล็อกอิน DirectAdmin ไปที่ FTP Management
  2. คลิก Create FTP Account
  3. กำหนด Username, Password และ Home Directory (เช่น /domains/example.com/public_html/designs)
  4. คลิก Create — บัญชีพร้อมใช้งานทันที

ประโยชน์ของการสร้างบัญชี FTP แยก ได้แก่ จำกัด Permission ให้เข้าถึงเฉพาะโฟลเดอร์ที่กำหนด ไม่ต้องแชร์รหัสผ่าน DirectAdmin หลัก และสามารถลบบัญชีได้เมื่อไม่ต้องการโดยไม่กระทบบัญชีอื่น

อัปโหลดไฟล์ขนาดใหญ่ด้วย ZIP

เมื่ออัปโหลดเว็บไซต์ที่มีไฟล์จำนวนมาก วิธีที่มีประสิทธิภาพที่สุดคือการบีบอัดก่อน:

  1. บีบอัดโฟลเดอร์เว็บไซต์เป็น .zip บนเครื่อง
  2. อัปโหลด .zip ขึ้น public_html ผ่าน FTP หรือ File Manager
  3. ใน File Manager คลิกขวาที่ไฟล์ ZIP → Extract
  4. ลบไฟล์ ZIP ออกหลังแตกเสร็จ

วิธีนี้ช่วยลดเวลาอัปโหลดได้มากโดยเฉพาะเมื่อมีไฟล์ขนาดเล็กจำนวนหลายร้อยไฟล์ เนื่องจาก TCP overhead ของการสร้าง connection แต่ละครั้งสะสมมาก

Permission ที่ถูกต้อง

หลังอัปโหลด ควรตั้งค่า Permission ให้ถูกต้อง:

ใน FileZilla: คลิกขวาที่ไฟล์ → File Permissions → กรอกตัวเลข

โฟลเดอร์หลัก: อัปโหลดไฟล์เว็บไซต์ไปที่ public_html เสมอ ไฟล์ที่อยู่นอก public_html จะไม่สามารถเข้าถึงผ่าน Browser ได้ ซึ่งเหมาะสำหรับไฟล์ Config ที่ต้องการซ่อน

การแก้ไขปัญหาที่พบบ่อย

ผู้ใช้ใหม่มักพบปัญหาเหล่านี้เมื่ออัปโหลดไฟล์เป็นครั้งแรก:

เชื่อมต่อ FTP ไม่ได้

ตรวจสอบตามลำดับดังนี้ ประการแรกตรวจว่า hostname, username และ password ถูกต้อง ประการที่สองตรวจว่า port เป็น 21 (FTP) หรือ 22 (SFTP) ประการที่สามลองเปลี่ยน Transfer Mode จาก Active เป็น Passive ใน FileZilla (Edit → Settings → Connection → FTP → Transfer Mode → Passive) เพราะ Firewall ของ ISP บางรายบล็อก Active mode

อัปโหลดสำเร็จแต่เว็บยังไม่อัพเดต

สาเหตุที่พบบ่อยที่สุดคือ Browser Cache ลอง Hard Refresh ด้วย Ctrl+Shift+R (Windows) หรือ Cmd+Shift+R (Mac) หากยังไม่อัพเดต ตรวจว่าอัปโหลดไฟล์ไปยัง path ที่ถูกต้องใน public_html และชื่อไฟล์ตรงกับที่ URL อ้างอิง (ระวัง case-sensitive บน Linux server)

Permission Denied เมื่อเว็บรันสคริปต์

หากหน้าเว็บแสดง "403 Forbidden" หรือ "500 Internal Server Error" หลังอัปโหลด ให้ตรวจ Permission ไฟล์: ไฟล์ .php ควรเป็น 644 และโฟลเดอร์ควรเป็น 755 ใน FileZilla คลิกขวา → File Permissions และกรอกตัวเลข permission ที่ถูกต้อง

เคล็ดลับเพิ่มประสิทธิภาพการอัปโหลดไฟล์

เมื่อคุ้นเคยกับการอัปโหลดไฟล์แล้ว เทคนิคเหล่านี้จะช่วยให้ทำงานได้รวดเร็วและปลอดภัยยิ่งขึ้น:

ใช้ Synchronized Browsing ใน FileZilla

FileZilla มีฟีเจอร์ Synchronized Browsing ที่ทำให้โฟลเดอร์บนเครื่องและบนเซิร์ฟเวอร์เปิดพร้อมกันเสมอ เปิดใช้งานได้ที่ View → Synchronized Browsing เหมาะมากเมื่อต้องทำงานกับโครงสร้างโฟลเดอร์ที่ซับซ้อนหรือเว็บไซต์หลายโดเมนพร้อมกัน เมื่อเลื่อนดูโฟลเดอร์ทางซ้าย (เครื่อง) โฟลเดอร์ทางขวา (เซิร์ฟเวอร์) จะเลื่อนไปพร้อมกันโดยอัตโนมัติ ลดโอกาสอัปโหลดผิดโฟลเดอร์

กรองประเภทไฟล์ที่ไม่ต้องการอัปโหลด

ไฟล์ระบบและไฟล์ชั่วคราวไม่ควรขึ้นบนเซิร์ฟเวอร์ ใน FileZilla ไปที่ Edit → Filters แล้วเพิ่มรูปแบบต่อไปนี้ในส่วน Exclude ได้แก่ .DS_Store (ไฟล์ระบบของ macOS) Thumbs.db (ไฟล์ thumbnail ของ Windows) *.log (ไฟล์ log ไม่ควรอยู่บน public server) และโฟลเดอร์ node_modules ซึ่งมีขนาดใหญ่มากและไม่จำเป็นบน shared hosting เพราะ server รันโค้ด PHP ไม่ใช่ Node.js

ตรวจ Checksum หลังอัปโหลดไฟล์สำคัญ

สำหรับไฟล์สำคัญเช่น database backup หรือ theme หลัก ควรตรวจความถูกต้องของไฟล์หลังอัปโหลดโดยใช้คำสั่ง md5sum ผ่าน SSH เพื่อยืนยันว่าไฟล์ที่อัปโหลดไม่เสียหายระหว่างการส่งข้อมูล ค่า checksum บนเครื่องและบนเซิร์ฟเวอร์ต้องตรงกันทุกตัวอักษร ถ้าต่างกันแม้เพียงตัวเดียวแสดงว่าไฟล์เสียหายและต้องอัปโหลดใหม่

# บนเครื่อง local
md5sum your-backup.zip

# บนเซิร์ฟเวอร์ผ่าน SSH หลังอัปโหลด
md5sum ~/public_html/your-backup.zip
# ค่าทั้งสองต้องตรงกันทุกตัวอักษร

แนวทางบำรุงรักษาไฟล์บน Hosting

นอกจากการอัปโหลดไฟล์ใหม่ การดูแลรักษาไฟล์บน Hosting เป็นประจำช่วยให้เว็บไซต์ทำงานได้ดีในระยะยาว ประกอบด้วยการลบไฟล์ backup เก่าที่ไม่ต้องการออกจาก public_html เพื่อประหยัดพื้นที่ การตรวจสอบ permission ของไฟล์ที่อาจเปลี่ยนไปหลัง update plugin หรือ theme และการ Backup ไฟล์เว็บไซต์ทั้งหมดออกมาเก็บไว้บนเครื่องหรือ cloud storage อย่างน้อยเดือนละครั้ง เพื่อป้องกันข้อมูลสูญหายในกรณีฉุกเฉิน

คำถามที่พบบ่อย

ต้องอัปโหลดไฟล์ไปไว้โฟลเดอร์ไหน

ไฟล์เว็บต้องอยู่ในโฟลเดอร์ public_html เท่านั้น ไฟล์ที่วางนอกโฟลเดอร์นี้จะไม่แสดงบนเว็บ และหน้าแรกควรชื่อ index.html หรือ index.php

FTP กับ SFTP ต่างกันอย่างไร ควรใช้ตัวไหน

SFTP ส่งข้อมูลแบบเข้ารหัส ส่วน FTP ธรรมดาไม่เข้ารหัส แนะนำใช้ SFTP เสมอเมื่อโฮสต์รองรับ เพื่อไม่ให้รหัสผ่านถูกดักระหว่างทาง

อัปโหลดไฟล์เยอะ ๆ ผ่าน File Manager ได้ไหม

ได้แต่ไม่เหมาะ File Manager เหมาะกับไฟล์จำนวนน้อย ถ้ามีไฟล์เป็นร้อยควรบีบเป็น ZIP แล้วอัปโหลดผ่าน FTP จากนั้นค่อยแตกไฟล์

ต้องการ Hosting ที่ใช้งานง่าย?

AsiaGB มี File Manager และ FTP พร้อมใช้งาน พร้อม DirectAdmin Control Panel ที่เรียนรู้ได้ภายใน 5 นาที

ดูแพ็กเกจ Hosting