ก่อนหน้านั้น เปิดใน PC มองเห็นภาพ ต่อมาภาพไม่แสดง ตรวจเช็คแล้วไฟล์ภาพหายไปทั้งสองภาพ ได้ทําการก๊อปปี้ภาพมาใส่แล้ว แต่ภาพก็ยังไม่แสดง ตรวจเช็คชื่อไฟล์ภาพก็ตรงกันไม่ผิดเพี้ยน
06:00
อาการที่อัปโหลดไฟล์กลับเข้าไปในโฟลเดอร์แล้วชื่อไฟล์ตรงกันทุกตัวอักษร แต่หน้าเว็บยังไม่แสดงภาพ มีสาเหตุหลักมาจาก ตัวพิมพ์ใหญ่-เล็ก (Case Sensitivity) ของระบบเซิร์ฟเวอร์ หรือ ระบบแคช (Cache) และสคริปต์ Lazy Load ครับ
สามารถตรวจสอบและแก้ไขตามจุดสำคัญต่อไปนี้ได้ครับ
1. ตรวจสอบตัวพิมพ์ใหญ่-เล็กของชื่อไฟล์และนามสกุล
เซิร์ฟเวอร์เว็บไซต์ส่วนใหญ่มักใช้ระบบ Linux ซึ่งมองว่าตัวพิมพ์ใหญ่และตัวพิมพ์เล็กเป็นคนละไฟล์กันอย่างสิ้นเชิง
• ตรวจสอบชื่อไฟล์: ในโค้ดระบุว่า BackgroundWeb3.jpg (ตัว B และ W เป็นพิมพ์ใหญ่) หากไฟล์ที่คุณก๊อปปี้ไปวางชื่อว่า backgroundweb3.jpg หรือ Backgroundweb3.jpg เว็บจะหาไฟล์ไม่เจอทันที
• ตรวจสอบนามสกุลไฟล์: ในโค้ดลงท้ายด้วย .jpg (ตัวพิมพ์เล็ก) หากไฟล์ที่นำไปวางเป็น .JPG (ตัวพิมพ์ใหญ่) หรือ .jpeg ภาพก็จะไม่แสดงเช่นกัน
2. ทดสอบเปิดลิงก์รูปภาพโดยตรงบนเบราว์เซอร์
ลองคัดลอกลิงก์จากในโค้ดไปวางในช่อง URL ของเบราว์เซอร์โดยตรง:
https://carbabyz.com• หากขึ้นภาพปกติ: แสดงว่าไฟล์อยู่ถูกที่และชื่อถูกต้อง 100% ปัญหาเกิดจาก แคช (Cache) หรือ Lazy Load (ดูวิธีแก้ในข้อ 3 และ 4)
• หากขึ้น Error 404 (Not Found): แสดงว่าชื่อโฟลเดอร์ ชื่อไฟล์ หรือนามสกุลไฟล์ยังมีจุดที่ไม่ตรงกัน หรืออัปโหลดผิดโฟลเดอร์ (เช่น วางในโฟลเดอร์ธีมตัวหลักแทนที่จะเป็นตัวลูก หรือคนละเวอร์ชัน)
3. ปัญหาจากระบบ Lazy Load (data-src)
ในโค้ดใช้ data-src="..." แทน src="..." ซึ่งต้องอาศัยไฟล์ JavaScript ของธีมในการเปลี่ยนค่า data-src ให้กลายเป็น src เพื่อให้ภาพแสดงผล
• หากมีปลั๊กอินหรือการตั้งค่าบางอย่างไปขัดขวางการทำงานของ JavaScript ในธีม ภาพจะไม่ถูกดึงขึ้นมาแสดง
• วิธีแก้ชั่วคราว/ถาวร: หากต้องการให้ภาพแสดงผลทันทีโดยไม่ต้องรอสคริปต์ สามารถเปลี่ยนคำว่า data-src= ในโค้ดให้เป็น src= ทั้ง 2 บรรทัดได้เลยครับ
4. ล้างแคช (Clear Cache) และตรวจสอบสิทธิ์ไฟล์ (File Permission)
• ล้างแคช: หากเว็บมีปลั๊กอินทำแคช (เช่น LiteSpeed Cache, WP Rocket) หรือใช้ Cloudflare ให้กดล้างแคชทั้งหมด รวมถึงกด Ctrl + F5 บนคีย์บอร์ดเพื่อบังคับให้เบราว์เซอร์โหลดหน้าเว็บใหม่โดยไม่ใช้ความจำเดิม
• ตรวจสอบ Permission: ใน File Manager ของโฮสติ้ง ให้ดูตัวเลขสิทธิ์ของไฟล์ภาพทั้ง 2 ไฟล์ ควรตั้งค่าไว้ที่ 644 (หากเป็นค่าอื่นเช่น 600 หรือ 000 เว็บจะไม่สามารถดึงภาพไปแสดงให้คนทั่วไปเห็นได้)
ลองทดสอบเปิด ลิงก์รูปภาพโดยตรง บนเบราว์เซอร์ตามข้อ 2 แล้วผลเป็นอย่างไรบ้างครับ (ขึ้นรูปภาพ หรือขึ้นหน้า 404) แจ้งผลลัพธ์มาได้เลยครับ จะได้แนะนำวิธีแก้ที่ตรงจุดที่สุดให้ครับ