ข้อผิดพลาด “SSL_ERROR_RX_RECORD_TOO_LONG ” เกิดขึ้นเนื่องจากไม่ได้ตั้งค่าการรับส่งข้อมูล SSL อย่างถูกต้องในเซิร์ฟเวอร์เป้าหมายที่ปลอดภัย ข้อผิดพลาดนี้อาจเกิดขึ้นหากมีพร็อกซีที่กำหนดค่าไม่ถูกต้องซึ่งไม่อนุญาตให้มีการจับมือ SSL บนพอร์ต 443 อย่างถูกต้อง
ในแง่คนธรรมดา หมายความว่าเบราว์เซอร์ของคุณไม่สามารถตรวจสอบข้อมูลที่ปลอดภัยได้ ซึ่งมักจะเป็นเพราะใบรับรอง SSL ไม่ได้กำหนดค่าอย่างถูกต้อง ข้อผิดพลาดนี้มีการรายงานอย่างกว้างขวางใน Firefox มากกว่าเมื่อเปรียบเทียบกับข้อผิดพลาดอื่นๆ
ตอนนี้จะมีคนสองประเภทที่อ่านบทความนี้ หนึ่งจะเป็นผู้ใช้ทั่วไปที่เข้าถึงเว็บไซต์และอีกประเภทหนึ่งจะเป็นผู้ใช้ที่โฮสต์เซิร์ฟเวอร์และแก้ไขปัญหานี้ในตอนท้าย เราได้ระบุโซลูชันสำหรับทั้งสองประเภทโดยระบุโซลูชันสำหรับผู้ใช้ทางเทคนิคโดยเขียน "สำหรับผู้ใช้ขั้นสูง" ที่ด้านหน้าของหัวข้อ ลองดูสิ!
โซลูชันที่ 1:การเข้าสู่ไซต์ด้วยโปรโตคอล HTTP
วิธีแก้ปัญหาที่ง่ายที่สุดสำหรับผู้ใช้ที่เข้าถึงเว็บไซต์เฉพาะคือการใช้โปรโตคอล HTTP แทน HTTPS โปรโตคอล HTTPS ต้องการการจับมือที่ปลอดภัยและใบรับรอง SSL หากเกิดปัญหาที่ฝั่งเซิร์ฟเวอร์เกี่ยวกับกลไกการรักษาความปลอดภัย คุณยังคงสามารถเข้าถึงเว็บไซต์ได้โดยใช้ HTTP เริ่มต้น
- เปิดเบราว์เซอร์ของคุณ และ พิมพ์ที่อยู่ ของเว็บไซต์แล้วกด Enter มีโอกาสที่เบราว์เซอร์จะตั้งค่าโปรโตคอลเป็น HTTPS โดยอัตโนมัติ
- แก้ไขบรรทัดที่อยู่และตั้งค่าเป็น HTTP .
- ลองเข้าสู่เว็บไซต์อีกครั้งและดูว่าข้อผิดพลาดยังคงปรากฏขึ้นหรือไม่
แนวทางที่ 2:การปิดใช้งานพรอกซีใน Firefox
ผู้ใช้ส่วนใหญ่ที่ประสบปัญหานี้ใช้ Firefox เป็นเบราว์เซอร์ของตน เป็นที่ทราบกันดีว่า Firefox ทำให้เกิดปัญหาเหล่านี้มาเป็นเวลานาน และผู้ใช้จำนวนมากรายงานว่าการปิดใช้งานพร็อกซีทั้งหมดช่วยแก้ปัญหาให้กับพวกเขาได้ โปรดทราบว่า “ตรวจหาพร็อกซีอัตโนมัติในเครือข่ายนี้” ไม่เหมือนกับ “ไม่มีพร็อกซี”
- เปิด Firefox เปิดไอคอนเมนูที่ด้านขวาบนและเลือก “ตัวเลือก ”.
- นำทางผ่านเมนูจนกว่าคุณจะพบ “Network Proxy ” คลิกและเลือกตัวเลือก “ไม่มีพร็อกซี่ ”.
- บันทึกการเปลี่ยนแปลงและรีสตาร์ท Firefox ตอนนี้ให้ตรวจสอบว่าปัญหาได้รับการแก้ไขแล้วหรือไม่
โซลูชัน 3:การปิดใช้งานซอฟต์แวร์ป้องกันไวรัส
สาเหตุที่ทำให้เกิดข้อผิดพลาดนี้เกิดจากการรบกวนจากซอฟต์แวร์ป้องกันไวรัสที่ติดตั้งในคอมพิวเตอร์ของคุณ มีหลายตัวเลือกที่จะปกป้องคอมพิวเตอร์ของคุณโดยตรวจสอบการรับส่งข้อมูลเครือข่ายและยืนยันใบรับรองทั้งหมดด้วย
ในโซลูชันนี้ คุณต้องสำรวจ ตัวเอง และดูว่ามีการตั้งค่าใด ๆ ในโปรแกรมป้องกันไวรัสของคุณที่อาจให้บริการเหล่านี้หรือไม่ ตัวอย่างเช่น หนึ่งในบริการเหล่านี้คือ “การสแกน HTTP ใน AVG ” ปิดการป้องกันทุกประเภทเหล่านี้แล้วลองเชื่อมต่อกับเว็บไซต์อีกครั้ง
หากคุณยังไม่สามารถแก้ไขปัญหาได้ คุณสามารถปิดการใช้งาน แอนตี้ไวรัสอย่างสมบูรณ์ . คุณสามารถตรวจสอบบทความของเราเกี่ยวกับวิธีปิดใช้งานโปรแกรมป้องกันไวรัสของคุณ รีสตาร์ทคอมพิวเตอร์หลังจากปิดใช้งาน และดูว่าคุณสามารถเข้าใช้เว็บไซต์ได้โดยไม่มีปัญหาใดๆ
โซลูชันที่ 4:ปิดใช้งาน TLS 1.3 (สำหรับผู้ใช้ขั้นสูง)
วิธีแก้ปัญหาอื่นสำหรับสิ่งนี้คือการปิดใช้งานโปรโตคอล TLS 1.3 โดยใช้การตั้งค่า Firefox ของคุณ คุณเปลี่ยนการตั้งค่ากลับได้หากไม่ได้ผล
- พิมพ์ “เกี่ยวกับ:config ” ในแถบที่อยู่ของ Firefox
- ตอนนี้ค้นหารายการ “tls.version.max ” เปลี่ยนค่าจาก 4 เป็น 3 .
- ค่า 4 หมายถึง TLS 1.3 และ 3 ย่อมาจาก TLS 1.2 . รีสตาร์ทเบราว์เซอร์และตรวจสอบว่าปัญหาได้รับการแก้ไขแล้วหรือไม่
แนวทางที่ 5:การแก้ไขปัญหาเพิ่มเติมสำหรับผู้ใช้ Firefox
นอกจากวิธีแก้ปัญหาข้างต้นแล้ว คุณยังสามารถลองแก้ไขปัญหาต่อไปนี้สำหรับเบราว์เซอร์ Firefox ของคุณ คุณสามารถดูวิธีการทำได้อย่างง่ายดายที่เว็บไซต์ของเรา
- ชัดเจน แคช และอัปเกรด Firefox เป็นเวอร์ชันล่าสุดที่มีให้
- ปิดส่วนเสริมของ Firefox ทั้งหมด .
- รีเฟรช เบราว์เซอร์ของคุณทั้งหมด โปรดทราบว่าบุ๊กมาร์กของคุณอาจถูกลบ ณ จุดนี้
- ตั้งค่า tls.version.max เป็น 0 .
- หากขั้นตอนข้างต้นทั้งหมดไม่ได้ผลสำหรับ Firefox ให้พิจารณาใช้เบราว์เซอร์สำรอง เช่น Chrome สำหรับเปิดเว็บไซต์
โซลูชัน 6:การเปลี่ยนใบรับรอง (ผู้ใช้ขั้นสูง)
วิธีแก้ปัญหาเบื้องต้นง่ายๆ สำหรับปัญหานี้โดยเปลี่ยนค่าใบรับรองบางค่าของเซิร์ฟเวอร์ของคุณ เราได้รวมโค้ดบางส่วนไว้เป็นการสาธิต
ที่นี่คุณต้องเปลี่ยน default:443 เป็น example.dev:443 .
โซลูชันที่ 7:การเปลี่ยนไฟล์ nginx.conf (สำหรับผู้ใช้ขั้นสูง)
การเปลี่ยนแปลงอื่นที่คุณสามารถลองแก้ไขข้อผิดพลาดได้คือการเปลี่ยนไฟล์ nginx.conf โซลูชันนี้เฉพาะสำหรับผู้ที่ใช้ Nginx เพื่อเรียกใช้ไซต์ของตน ใช้หลักการเดียวกันกับที่เราปรับแต่งการตั้งค่าเกี่ยวกับพอร์ต 443
ด้านล่างนี้คือโค้ดบางส่วนพร้อมวิธีแก้ปัญหาที่กล่าวถึงด้านล่างเพื่อช่วยให้คุณเข้าใจ
ที่นี่คุณต้องเปลี่ยน ฟัง 443; เพื่อ ฟัง 443 ssl; นอกจากนี้ คุณควรลบบรรทัด “ssl on;” . ด้วย . ตรวจสอบว่าปัญหาได้รับการแก้ไขแล้วหรือไม่
หมายเหตุ: หากคุณต้องการบังคับเช่น phpmyadmin เพื่อใช้ SSL/https คุณจะประสบปัญหานี้หากลิงค์นี้หายไป คุณสามารถใช้ a2ensite default-ssl.
โซลูชันที่ 8:การตรวจสอบเพิ่มเติม (สำหรับผู้ใช้ขั้นสูง)
นอกจากวิธีแก้ปัญหาข้างต้นแล้ว คุณควรตรวจสอบให้แน่ใจว่ามีข้อความต่อไปนี้
- คุณควร พอร์ต 443 เปิดอยู่ และเปิดใช้งานในเซิร์ฟเวอร์ นี่คือพอร์ตมาตรฐานสำหรับการสื่อสาร https
- หาก SSL ใช้ที่ไม่ได้มาตรฐาน Firefox อาจแสดงข้อผิดพลาดนี้ คุณควรตรวจสอบให้แน่ใจว่าทำงานบนพอร์ต 443
- หากคุณใช้ Apache2 คุณควรตรวจสอบว่าพอร์ตสำหรับ SSL คือ 443 ซึ่งทำได้โดยการตั้งค่า httpd.conf ไฟล์ดังนี้
- ตรวจสอบให้แน่ใจว่าใบรับรอง SSL ยังไม่หมดอายุ .
- หากคุณคือ Apache2 คุณต้องตรวจสอบไฟล์กำหนดค่า vhost ของคุณ มีรายงานว่ามีการเปลี่ยนแปลง
เป็น _default_ แก้ไขข้อผิดพลาด - คุณควรตรวจสอบด้วยว่าคุณมี ใบรับรอง SSL หนึ่งรายการใน IP เดียว . ตรวจสอบให้แน่ใจว่าใบรับรอง SSL ทั้งหมดใช้ IP เฉพาะของตนเอง
- ใน Apache ตรวจสอบว่าคำสั่ง Listen
ตรงกับหมายเลขพอร์ตในคำสั่ง VirtualHost สำหรับเว็บไซต์ที่มีการรักษาความปลอดภัย และคำสั่งการกำหนดค่า SSL (SSLEngine On, SSLCertificateFile และอื่นๆ) ปรากฏใน VirtualHost คำสั่งสำหรับเว็บไซต์หรือในไฟล์การกำหนดค่า SSL สำหรับเซิร์ฟเวอร์