คุณอาจพบข้อผิดพลาดต่อไปนี้ในขณะที่พยายามตั้งค่าใบรับรอง SSL บน Apache:
รหัสข้อผิดพลาด: ssl_error_rx_record_too_long
(Firefox) หรือ Internet Explorer cannot display the webpage
(เช่น)
บ่อยครั้งที่คุณมีบางสิ่งผิดปกติ (เช่นพอร์ตการฟัง: 443
). ขั้นแรกตรวจสอบให้แน่ใจว่าไฟร์วอลล์หรือ iptables ของคุณอนุญาตให้เปิดการเชื่อมต่อขาเข้า 443
(คำสั่งแสดงบน Ubuntu):
#sudo ufw อนุญาต 443
นั่นอาจไม่ได้แก้ไขปัญหาของคุณ แต่ตอนนี้ลองไปยังที่อยู่ต่อไปนี้:
http://www.domain.tld:443
หากคุณเห็นบางสิ่งบางอย่างที่หน้าเว็บด้านบนแสดงว่าไซต์ของคุณกำลังรับฟังพอร์ตที่ไม่ใช่ SSL ฉันจะสมมติว่าไฟล์โฮสต์เสมือน apache ของคุณมีบางอย่างตาม:
ชื่อ VirtualHost *
สิ่งที่คุณต้องการจะทำคือบังคับให้โฮสต์ของคุณฟังโดยเฉพาะบนพอร์ตที่เหมาะสม เปลี่ยนบรรทัดด้านบนเป็นดังต่อไปนี้:
NameVirtualHost *: 80
หากคุณใช้ Ubuntu ของคุณ ports.conf
ไฟล์น่าจะมี 443
เปิดใช้งานบนพอร์ตฟัง คุณอาจมี default-ssl
ระบุไว้ในของคุณ /etc/apache2/sites-available/
โฟลเดอร์ซึ่งในกรณีนี้คุณอาจต้องการเปิดใช้งาน:
#sudo a2ensite / etc / apache2 / sites-available / default-ssl
โดยพื้นฐานแล้วไฟล์นั้นมีสิ่งต่อไปนี้อยู่ภายใน:
... ชื่อเซิร์ฟเวอร์ / รูทเอกสารของคุณ ... SSLEngine บน SSLCertificateFile /etc/ssl/certs/server.crt SSLCertificateKeyFile /etc/ssl/private/server.key
ในขณะที่คุณสามารถใช้ใบรับรอง SSL“ ที่ใช้ร่วมกัน” เดียวสำหรับหลายโฮสต์ได้หากแต่ละโฮสต์ต้องการของตัวเอง SSLพวกเขาจะต้องมีที่อยู่ IP แบบคงที่
คำแนะนำอื่น ๆ :
- รับรองว่าพอร์ตนั้น
443
เปิดและเปิดใช้งานบนเซิร์ฟเวอร์ของคุณ นี่คือพอร์ตมาตรฐานสำหรับการสื่อสาร HTTPS - หาก SSL กำลังใช้พอร์ตที่ไม่ได้มาตรฐานบางครั้ง Firefox 3 สามารถให้ข้อผิดพลาดนี้ได้ ตรวจสอบให้แน่ใจ SSL กำลังทำงานบนพอร์ต
443
. - หากใช้ Apache2 ให้ตรวจสอบว่าคุณใช้พอร์ตอยู่
443
สำหรับ SSL สามารถทำได้โดยการตั้งค่าports.conf
ไฟล์ดังต่อไปนี้:ฟัง 80 ฟัง 443 https
- ตรวจสอบให้แน่ใจว่าคุณไม่มีมากกว่าหนึ่ง ใบรับรอง SSL แบ่งปันที่อยู่ IP เดียวกัน โปรดตรวจสอบว่าใบรับรอง SSL ทั้งหมดใช้ที่อยู่ IP เฉพาะของตนเอง
- หากใช้ Apache2 ตรวจสอบของคุณ
vhost
การตั้งค่า ผู้ใช้บางคนรายงานว่าเปลี่ยนเป็น_default_
แก้ไขข้อผิดพลาด