Chrome เพิ่ม HTTPS แปลก ๆ : 1 ส่วนหัวให้กับคำขอทั้งหมด


19

ฉันได้รับข้อผิดพลาดแปลก ๆ มากมายบนเว็บไซต์ที่เกี่ยวข้องกับ HTTPS ไซต์เหล่านี้ทำงานได้ดีใน FF และ IE แต่ไม่สามารถโหลดใน Chrome ได้ ดูเหมือนว่าแม้ว่าฉันจะขอ URL ที่ไม่ปลอดภัย (http) แต่ Google Chrome จะเพิ่มส่วนหัวเพิ่มเติมHTTPS:1ให้กับคำขอ

สิ่งนี้ทำให้เซิร์ฟเวอร์บางแห่งอาจเป็นบางแห่งที่ใช้ offload SSL และให้บริการโฮสติ้งที่ใช้ร่วมกันเพื่อตอบสนองกับข้อผิดพลาดเนื่องจากไม่มี SSL บนเซิร์ฟเวอร์

ฉันไม่ได้ถูกเปลี่ยนเส้นทางไปยังหน้าที่มีการรักษาความปลอดภัย (HTTPS) แต่ URL ภายในทั้งหมดในแหล่งที่มาจะถูกแก้ไขให้เป็น https

ฉันตรวจสอบการเชื่อมต่อกับพู้ทำเล่นแล้ว การแยกวิเคราะห์นี้ไม่ได้เกิดขึ้นในคอมพิวเตอร์ของฉันและความแตกต่างเพียงอย่างเดียวคือHTTPS:1ส่วนหัวนี้

ฉันได้สร้างหน้า PHP แบบง่ายที่พิมพ์$_SERVERตัวแปร [HTTP_HTTPS] => 1เมื่อฉันเข้าถึงได้ด้วยโครเมี่ยมที่ฉันสามารถดู: ฉันไม่เห็นด้วย FireFox

ฉันพยายามล้างข้อมูลทั้งหมดยกเลิกการจับคู่โครเมี่ยมจากบัญชี Google ของฉันและลบและติดตั้ง Chrome ออกจากศูนย์

ใครมีความคิดเห็นเกี่ยวกับเรื่องนี้บ้าง? มันทำให้ฉันเป็นบ้า


ฉันมีปัญหาเดียวกันกับ chrome canary แต่มีเฉพาะไซต์ที่ฉันหลอกด้วยการเปลี่ยนเส้นทาง http-> https ฉันเดาว่ามีบางอย่างเกี่ยวข้องกับแคชการเปลี่ยนเส้นทาง 301 Chrome ไม่ได้เปลี่ยนเส้นทางฉันไปยัง https หลังจากล้างแคชเบราว์เซอร์ทั้งหมด อย่างไรก็ตามมันไม่ได้แก้ปัญหาส่วนหัวของ https ฉัน "แก้ไข" โดยไม่ใช้ canary สำหรับไซต์เฉพาะอีกต่อไป วันนี้ปัญหาเดียวกันเริ่มต้นขึ้นอีกครั้งด้วยโครเมี่ยมที่มีเสถียรภาพ แต่ไม่ได้อยู่ในนกขมิ้นอีกต่อไป ฉันเดาว่าแคชกับนกขมิ้นหมดอายุแล้ว ฉันไม่ได้ทำการทดสอบมาระยะหนึ่งแล้ว ดูสุ่มโดยสิ้นเชิงสำหรับฉัน ขออภัยที่ไม่ตอบคำถาม แต่เนื่องจากฉัน
Azeruel

ใช่ฉันเห็นสิ่งนี้เช่นกันเริ่มเมื่อวานนี้ ทำให้ฉันบ้าเหมือนกัน
เคอร์บี้

Chrome เป็นอย่างมากก้าวร้าวมากเมื่อมันมาถึงความปลอดภัย Google อาจทำสิ่งนี้ด้วยเหตุผลทางธุรกิจ: หากไม่สามารถรักษาความปลอดภัยข้อมูลผู้ใช้กับผู้มีอำนาจของรัฐบาลผู้ใช้จะหมดความเชื่อมั่นใน Google อย่างรวดเร็ว ดังนั้น Google ถือว่าการเป็นผู้นำในความเป็นส่วนตัวทางอินเทอร์เน็ตมีความสำคัญสูงสุดแม้ว่าความจริงที่ว่ารูปแบบธุรกิจตามโฆษณานั้นต้องอาศัยการติดตามพฤติกรรมของผู้ใช้อย่างเต็มที่ ผู้ใช้เชื่อว่า Google เป็นผู้ดูแลข้อมูลส่วนบุคคลอย่างปลอดภัยไม่ให้รั่วไหลข้อมูลไปยังบุคคลที่สามที่ไม่ได้รับอนุญาตดังนั้นพวกเขาจึงไม่สามารถทำอะไรได้น้อยลง
bwDraco - Reinstate Monica

คำตอบ:


15

ไซต์ส่วนใหญ่ที่คุณประสบปัญหากำลังเรียกใช้รหัสเซิร์ฟเวอร์ที่ตีความHTTPS: 1ส่วนหัวคำขอไม่ถูกต้อง ตัวอย่างเช่นปลั๊กอิน Wordpress WooCommerce ซึ่งทำงานบนไซต์ประมาณ900,000 แห่งมีโค้ดบั๊กกี้ที่จัดการHTTPS: 1ส่วนหัวไม่ถูกต้อง ดูเอกสารแก้ไขล่าสุดได้ที่นี่: https://woocommerce.wordpress.com/2015/07/07/woocommerce-2-3-13-security-and-maintenance-release/

มีโพสต์ที่คล้ายกันใน StackOverflow: /programming/31565155/wordpress-woocommerce-forces-https-when-it-shouldnt/31570584#31570584

หากต้องการรายละเอียดเพิ่มเติม: Chrome ได้ดำเนินการตามข้อกำหนดการอัปเกรดคำขอที่ไม่ปลอดภัยจาก World Wide Web Consortium (W3C) ส่วนที่ 3.2.1ของข้อมูลจำเพาะนั้นคือฟิลด์ส่วนหัวคำขอ HTTP ที่ไม่ปลอดภัยอัพเกรดซึ่งระบุ

3.2.1 ฟิลด์ส่วนหัวคำขอ HTTP ที่ไม่ปลอดภัยอัพเกรด - ไม่ปลอดภัย

ฟิลด์อัพเกรดส่วนหัวคำขอ HTTP ที่ไม่ปลอดภัยร้องขอส่งสัญญาณไปยังเซิร์ฟเวอร์เพื่อแสดงการตั้งค่าของลูกค้าสำหรับการตอบสนองที่เข้ารหัสและรับรองความถูกต้องและสามารถจัดการกับคำสั่งอัพเกรดที่ไม่ปลอดภัยเพื่อให้การตั้งค่านั้นราบรื่นที่สุด เพื่อให้

การตั้งค่านี้แสดงโดย ANBF ต่อไปนี้:

"คำขออัพเกรดไม่ปลอดภัย:" * WSP "1" * WSP

ไซต์เช่นที่เรียกใช้ปลั๊กอิน WooCommerce ใน Wordpress จะเขียน URL ทั้งหมดในการตอบกลับอย่างไม่ถูกต้องเนื่องจากhttps:\\ลิงก์หากHTTPS: 1ส่วนหัวถูกตั้งค่าในคำขอที่ไม่ปลอดภัย (http)

ในฐานะผู้ใช้ปลายทางของไซต์นั้นการแก้ไขที่ง่ายเพียงอย่างเดียวคือการใช้เบราว์เซอร์อื่นที่ไม่ใช่ Chrome จนกว่าเว็บไซต์เหล่านั้นจะได้รับการซ่อมแซม


ขอบคุณสำหรับการตอบกลับอย่างละเอียดฉันเห็นว่ามีการนำรหัสนี้มาใช้ แต่เนื่องจากปัญหานี้เฉพาะกับคอมพิวเตอร์ของฉัน (ฉันได้ตรวจสอบกับคอมพิวเตอร์หลายเครื่องในสำนักงาน) ฉันคิดว่ามีวิธีปิดใช้งาน คอมพิวเตอร์เครื่องอื่นไม่ส่ง HTTPS: 1 ส่วนหัวโดยเฉพาะกับคอมพิวเตอร์ของฉัน
TwoDiv

1
ไม่เฉพาะเจาะจงกับคอมพิวเตอร์ของคุณ ฉันคาดเดาว่าผู้ใช้รายอื่นยังไม่ได้อัปเดตเป็น Chrome รุ่นล่าสุด แต่
Kirby

ว้าวสิ่งนี้จะเป็นปัญหาใหญ่สำหรับ WooCommerce ฉันเรียกใช้ไซต์ที่แยกต่างหาก (ไม่เปิดใช้งาน https) สองไซต์บน Woo และเพิ่งทำการติดตั้งด้วยการแก้ไขที่พวกเขาเผยแพร่ แต่ฉันสามารถจินตนาการได้ว่ามีเจ้าของร้านจำนวนมากบ่นเกี่ยวกับเว็บไซต์นี้!
lisburnite

ฉันคิดว่ามันไม่ใช่แค่ปัญหาของ WooCommerce แต่เป็นวิธีที่เซิร์ฟเวอร์อ่านส่วนหัว ในงานของฉันเราใช้ Off-load SSL และเราใช้พารามิเตอร์ HTTP-Proto เพื่อแจ้งให้เซิร์ฟเวอร์ทราบว่าคำขอมาถึงใน HTTPS หรือไม่ เซิร์ฟเวอร์ได้รับคำขอ HTTP อย่างง่ายและแยกวิเคราะห์ราวกับว่าเป็น HTTPS ฉันคิดว่านี่เป็นปัญหาเดียวกันและหากการกำหนดค่าเซิร์ฟเวอร์ไม่อนุญาตให้ใช้ HTTPS ไม่มี SSL หรือใช้โฟลเดอร์อื่นสำหรับ http และ https - พวกเขาจะผิดพลาด
TwoDiv

3
@lisburnite คุณใช้งานเว็บไซต์เพื่อการค้าที่ไม่แสดงผลผ่าน HTTPS ใช่หรือไม่ คุณน่าจะให้การปกป้องและแก้ไขปัญหาแก่ลูกค้าของคุณ ...
แอชลีย์

4

ดูเหมือนข้อบกพร่องในรุ่น 44 ดูเหมือนว่าจะได้รับการแก้ไขในการอัปเดตล่าสุด ตอนนี้ฉันใช้ 44.0.2403.107 และดูเหมือนว่าปัญหาจะหายไป

ข้อมูลเพิ่มเติมที่นี่: http://www.zdnet.com/article/brand-new-chrome-44-release-added-a-bug/


3

มันเป็นมากกว่าเพียง wocommerce ทั้งหมดของ wordpress ที่กำลังยุ่งเหยิงก่อให้เกิด CSS รูปภาพและอื่น ๆ ที่ไม่ดี

เพิ่มส่วนนี้ไว้ใกล้กับด้านบนของ wp-config.php เพื่อลบออก

if($_SERVER['HTTP_HTTPS'] && !$_SERVER['HTTPS'])
{    unset($_SERVER['HTTP_HTTPS']);
}

@ ใด ๆ แล้วแผงผู้ดูแลระบบจะไม่ทำงาน
Dhruv Kapatel

ใช้บนเว็บไซต์จำนวนมากที่ยากจนเมื่อวานนี้โดยไม่มีปัญหา
ใด ๆ ที่

1

คุณอาจลองทำเช่นนี้เพื่อยกเลิกการตั้งค่าHTTP_HTTPSส่วนหัว

if(!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on') {
    unset($_SERVER['HTTP_HTTPS']);
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.