ข้อผิดพลาด SSL_ERROR_RX_RECORD_TOO_LONG เกิดจาก SSL Traffic ไม่ได้ตั้งค่าถูกต้องใน Secure Server ปลายทาง อาจเกิดจาก Proxy ที่ตั้งค่าผิด ไม่อนุญาต SSL Handshake บนพอร์ต 443 ได้ถูกต้อง

ง่ายๆ คือ Browser ไม่สามารถยืนยันข้อมูลปลอดภัยได้ เพราะ SSL Certificate ไม่ได้ตั้งค่าถูกต้อง พบรายงานเยอะใน Firefox มากกว่าบราวเซอร์อื่น
อ่านบทความนี้ 2 กลุ่ม: 1) ผู้ใช้ทั่วไปที่เข้าถึงเว็บ 2) ผู้ดูแล Server ที่ troubleshoot ฝั่ง Server มีวิธีแก้สำหรับทั้ง 2 กลุ่ม โดยระบุวิธีสำหรับผู้เชี่ยวชาญด้วย "for advanced users"
วิธีที่ 1: เข้าเว็บด้วยโปรโตคอล HTTP
วิธีง่ายที่สุดสำหรับผู้ใช้ทั่วไป: ใช้ HTTP แทน HTTPS HTTPS ต้องการ Secure Handshake และ SSL Certificate หากฝั่ง Server มีปัญหาเรื่อง Secure Mechanism ยังเข้าถึงได้ด้วย HTTP ปกติ
- เปิด Browser พิมพ์ที่อยู่เว็บกด Enter Browser มักตั้งโปรโตคอลเป็น HTTPS อัตโนมัติ
- แก้ไข Address bar ให้เป็น HTTP

- ลองเข้าถึงเว็บอีกครั้ง ดูว่า Error ยังโผล่หรือไม่
วิธีที่ 2: ปิด Proxy ใน Firefox
ผู้ใช้ส่วนใหญ่ที่เจอปัญหานี้ใช้ Firefox Firefox ทราบว่าก่อให้เกิดปัญหานี้มานาน หลายคนรายงานว่าปิด Proxy ทั้งหมดแก้ปัญหาได้ จำไว้ว่า "auto-detect proxies on this network" ไม่ใช่ "No proxy"
- เปิด Firefox คลิกไอคอนเมนูมุมขวาบน เลือก "Options"

- ไปที่ "Network Proxy" คลิก เลือก "No proxy"

- Save changes รีสตาร์ท Firefox ตรวจสอบว่าปัญหาแก้หรือไม่
วิธีที่ 3: ปิด Antivirus Software
สาเหตุอาจมาจาก Antivirus รบกวน มีตัวเลือกหลายอย่างที่ปกุป้องโดยตรวจสอบ Network Traffic และ Verify Certificate ทั้งหมด
ในวิธีนี้ ต้อง สำรวจด้วยตนเอง ดูว่า Antivirus ของคุณมีการตั้งค่าบางอย่างที่ให้บริการแบบนี้หรือไม่ เช่น "HTTP scanning in AVG" ปิดการป้องกันแบบนี้ทั้งหมด ลองเข้าถึงเว็บอีกครั้ง
หายังแก้ไม่ได้ สามารถ ปิด Antivirus ทั้งหมด ได้ ดูวิธีปิด Antivirus ในบทความของเรา รีสตาร์ทคอมพิวเตอร์หลังปิด ทดสอบเข้าถึงเว็บได้ไหม
วิธีที่ 4: ปิด TLS 1.3 (สำหรับผู้ใช้ขั้นสูง)
วิธีแก้รอบข้างคือปิด TLS 1.3 ผ่านการตั้งค่า Firefox สามารถกลับคืนค่าได้หากไม่ได้ผล
- พิมพ์ "about:config" ใน Address bar ของ Firefox

- ค้นหา entry "tls.version.max" เปลี่ยนค่าจาก 4 เป็น 3

- ค่า 4 = TLS 1.3 และ 3 = TLS 1.2 รีสตาร์ท Browser ตรวจสอบว่าปัญหาแก้หรือไม่
วิธีที่ 5: Troubleshooting เพิ่มเติมสำหรับ Firefox Users
นอกจากวิธีข้างต้น ยังลองได้อีก:
- Clear Cache และอัปเดต Firefox เป็นรุ่นล่าสุด
- ปิด Add-ons ทั้งหมดของ Firefox
- Refresh Browser ทั้งหมด (Bookmarks อาจหาย)
- ตั้งค่า tls.version.max = 0
- หาทุกวิธ่าล้มเหลว ลองใช้ Alternate Browser เช่น Chrome
วิธีที่ 6: เปลี่ยน Certificate (ผู้ใช้ขั้นสูง)
Workaround ง่ายๆ คือเปลี่ยนค่า Certificate บางอย่างของ Server มีโค้ดตัวอย่าง
ต้องเปลี่ยน default:443 เป็น example.dev:443
วิธีที่ 7: เปลี่ยนไฟล์ nginx.conf (ผู้ใช้ขั้นสูง)
อีกวิธีคือแก้ nginx.conf สำหรับผู้ใช้ Nginx รันไซต์ หลักการเดียวกัน คือปรับตั้งค่าพอร์ต 443
โค้ดตัวอย่าง:
ต้องเปลี่ยน listen 443; เป็น listen 443 ssl; และลบบรรทัด "ssl on;" ทดสอบว่าปัญหาแก้หรือไม่
หมายเหตุ: หากต้องการบังคับ phpmyadmin ให้ใช้ SSL/https จะเจอปัญหานี้หากขาดลิงก์นี้ ใช้ a2ensite default-ssl
วิธีที่ 8: ตรวจสอบเพิ่มเติม (ผู้ใช้ขั้นสูง)
นอกจากนี้ ต้องตรวจสอบให้แน่ใจว่า:
- Port 443 เปิดอยู่ และ Enabled ใน Server พอร์ตมาตรฐานสำหรับ HTTPS
- หาก SSL ใช้ Non-standard Port Firefox อาจแจ้ง Error ตรวจสอบว่ารันบน Port 443
- หากใช้ Apache2 ตรวจสอบว่า SSL Port เป็น 443 ทำได้โดยตั้ง httpd.conf ดังนี้:

- ตรวจสอบว่า SSL Certificates ไม่หมดอายุ
- หากใช้ Apache2 เช็ค vhost config มีรายงานว่าเปลี่ยน <VirtualHost> เป็น _default_ แก้ปัญหาได้
- ตรวจสอบว่ามี SSL Certificate เพียง 1 ต่อ 1 IP ให้แน่ใจว่า SSL ทุกตัวใช้ Dedicated IP ของตัวเอง
- ใน Apache ตรวจสอบว่า Listen <port> directive ตรงกับ Port ใน VirtualHost directive และ SSL Configuration statements (SSLEngine On, SSLCertificateFile <filename> ฯลฯ) อยู่ใน VirtualHost directive หรือ SSL Config file ของ Server