ฉันทำงานในเว็บไซต์ที่ได้มาตรฐานค่อนข้างมีเนื้อหาสาธารณะรวมถึงเนื้อหาส่วนตัว / ที่กำหนดเองสำหรับผู้ใช้ที่ลงทะเบียน ฉันรู้ว่าฉันต้องใช้ HTTPS เมื่อผู้ใช้เข้าสู่ระบบหรือส่งรายละเอียดบัตรเครดิต มีเหตุผลที่ฉันไม่ควรใช้ HTTPS สำหรับทั้งไซต์ใช่หรือไม่
ฉันทำงานในเว็บไซต์ที่ได้มาตรฐานค่อนข้างมีเนื้อหาสาธารณะรวมถึงเนื้อหาส่วนตัว / ที่กำหนดเองสำหรับผู้ใช้ที่ลงทะเบียน ฉันรู้ว่าฉันต้องใช้ HTTPS เมื่อผู้ใช้เข้าสู่ระบบหรือส่งรายละเอียดบัตรเครดิต มีเหตุผลที่ฉันไม่ควรใช้ HTTPS สำหรับทั้งไซต์ใช่หรือไม่
คำตอบ:
ใช่มีเหตุผลที่คุณไม่ควรใช้มันกับเว็บไซต์ทั้งหมด เบราว์เซอร์บางตัว (ขึ้นอยู่กับยี่ห้อและรุ่น) จะไม่แคชเนื้อหาจากคำขอ HTTPS ไปยังดิสก์ซึ่งอาจทำให้ประสบการณ์การเรียกดูช้าลงสำหรับผู้ใช้เนื่องจากสินทรัพย์แบบสแตติกจะถูกโหลดด้วยคำขอหน้าทุกหน้า (สไตล์ชีทจาวาสคริปต์ภาพส่วนหัว ฯลฯ ) . ตัวอย่างเช่นMozilla ระบุว่า:
"การแคชดิสก์บันทึกสำเนาของไฟล์ที่ดาวน์โหลดไว้ในฮาร์ดไดรฟ์ดังนั้นจึงไม่จำเป็นต้องดาวน์โหลดซ้ำอีกครั้งหน้าเหล่านี้สามารถดูได้ทุกคนที่ได้รับอนุญาตไปยังโฟลเดอร์แคชหน้าที่ส่งด้วยการเข้ารหัส SSL มักมีข้อมูลที่ละเอียดอ่อนและ การแคชเพจเหล่านี้ไปยังดิสก์อาจมีความเสี่ยงด้านความเป็นส่วนตัวการตั้งค่านี้ควบคุมว่าจะแคชไปยังดิสก์เพจที่ส่งด้วยการเข้ารหัส SSL หรือไม่ "
วิธีที่เบราว์เซอร์แคช HTTPS แต่ละตัวค่อนข้างขัดแย้งกันแต่ยังคงมีโอกาสที่ผู้ใช้หลายคนจะปิดใช้งานการแคชดิสก์สำหรับคำขอ HTTPS
ประการที่สอง HTTPS ต้องการ "การจับมือกัน " สำหรับทุกคำขอและสิ่งนี้มาพร้อมกับค่าใช้จ่ายบางส่วนซึ่งจะส่งผลต่อประสิทธิภาพและทำให้คำขอมีขนาดใหญ่ขึ้น (โดยทั่วไปจะมีเพียงไม่กี่ KB เท่านั้น - แต่สำหรับทุกคำขอ HTTP KeepAliveสามารถ จำกัด สิ่งนี้ได้ แต่ก็ยังมีค่าใช้จ่ายที่คุณไม่ต้องการสำหรับเนื้อหาที่ไม่ปลอดภัย
หากคุณวางแผนที่จะใช้ SSL แบบเต็มตรวจสอบให้แน่ใจว่าบริการของบุคคลที่สามที่โฮสต์อยู่ที่คุณกำลังใช้ (เซิร์ฟเวอร์โฆษณาการวิเคราะห์เครื่องมือการแชร์ ฯลฯ ) มีเวอร์ชัน SSL หรือคุณจะได้รับคำเตือนเนื้อหาแบบผสมในเบราว์เซอร์บางตัว
ปัญหาอีกประการคือทุกสิ่งที่คุณให้บริการจากหน้าใด ๆนั้นต้องผ่าน SSL จริง ๆ รวมถึงทรัพยากรบุคคลที่สาม เราพบว่านี่เป็นปัญหาที่แท้จริงของบางสิ่งเช่น YouTube เช่น เนื่องจาก Google ไม่ได้ทำให้วิดีโอ YouTube สามารถใช้ได้ผ่าน SSL ก็หมายความว่าวิดีโอใด ๆ ที่ YouTube ที่คุณทำต้องการที่จะฝังในหน้าเว็บไซต์ของคุณจะทำให้ "หน้านี้มีเนื้อหาที่ปลอดภัยและไม่ปลอดภัย" คำเตือน แม้ว่านี่จะเป็นเบราว์เซอร์ส่วนใหญ่ที่บอบบาง แต่มันก็เป็นกล่องโต้ตอบขนาดใหญ่ใน IE และอาจทำให้ผู้ใช้บางคนละทิ้งเว็บไซต์ของคุณได้อย่างรวดเร็ว
คุณควรคิดถึงการเติบโตด้วย เมื่อคุณมีเว็บเซิร์ฟเวอร์มากกว่าหนึ่งรายการคุณจะต้องตัดสินใจ: คุณต้องการให้ HTTPS ในแต่ละเซิร์ฟเวอร์หรือไม่ถ้าใช่คุณจะใช้ใบรับรองเดียวกันหรือใบรับรองต่อเซิร์ฟเวอร์ตามที่แนะนำบ่อย ฉันเห็นการตั้งค่าทั่วไปที่มีเซิร์ฟเวอร์ HTTPS น้อยลงเนื่องจากโดยทั่วไปจะใช้สำหรับการประมวลผลรายละเอียดที่ละเอียดอ่อนและเซิร์ฟเวอร์ HTTP อื่น ๆ เนื่องจากมีแนวโน้มที่จะได้รับปริมาณการใช้งานจำนวนมาก HTTPS เพิ่มความซับซ้อนเล็กน้อยให้กับการตั้งค่าแต่ละรายการของคุณ สิ่งที่ต้องจำไว้
อย่างที่ฉันเห็นเหตุผลเดียวที่ไม่ใช้ HTTPS ในเว็บไซต์ของคุณทั้งหมดคือการทำให้เซิร์ฟเวอร์ของคุณช้าลงและผู้เข้าชมมีประสบการณ์การท่องเว็บที่ช้าลงเล็กน้อย ที่ถูกกล่าวว่ามีประโยชน์ โดยเฉพาะ:
นอกเหนือจากการทำให้นักพัฒนาซอฟต์แวร์ของคุณไม่ต้องกังวลเกี่ยวกับการแสดงข้อมูลที่ปลอดภัยในหน้าเว็บที่ไม่ได้เข้ารหัสก็ไม่มีเหตุผลทางเทคนิคที่จะใช้ HTTPS ในทุก ๆ หน้า ด้วยเหตุผลเดียวกันมีเหตุผลน้อยมากที่จะไม่
สุดท้าย แต่ไม่ท้ายสุดนายจ้างหลายคนไม่ชอบ emplyees ของพวกเขาในเว็บไซต์ https ที่ "เข้ารหัส" นี่เป็นกรณีของ บริษัท และองค์กรด้านความมั่นคง / ป้องกันดังนั้นหากคุณมีเว็บไซต์ "https เท่านั้น" คุณอาจสูญเสียผู้เยี่ยมชม / ลูกค้าเหล่านี้บางส่วนเนื่องจากเครือข่ายของพวกเขาจะไม่ยอมให้พวกเขาท่องเว็บไซต์ของคุณ