วิธีแก้ไขข้อผิดพลาด HTTP 302 (5 วิธี)
เผยแพร่แล้ว: 2021-11-06รหัส HTTP 302 เป็นวิธีที่มีค่าในการเปลี่ยนเส้นทางผู้ใช้เว็บไซต์ไปยัง URL อื่นชั่วคราว อย่างไรก็ตาม หากเว็บไซต์ของคุณส่งการเปลี่ยนเส้นทาง 302 ครั้งโดยผิดพลาด นั่นเป็นสัญญาณว่ามีบางอย่างผิดปกติ
ไม่ต้องกังวล คุณสามารถแก้ไขปัญหานี้ได้ แต่คุณจะต้องแก้ไขปัญหาบางอย่าง
ขั้นตอนแรกคือการทำความเข้าใจว่ารหัส HTTP 302 คืออะไร ทำงานอย่างไร และทำไมจึงเกิดขึ้น เมื่อคุณรู้แล้ว คุณจะสามารถคิดออกว่ามีอะไรผิดพลาดและจะแก้ไขอย่างไรให้ถูกต้อง
ในโพสต์นี้ เราจะบอกคุณทุกสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับข้อผิดพลาด HTTP 302 จากนั้นเราจะแชร์เคล็ดลับการแก้ปัญหาห้าข้อเพื่อช่วยคุณแก้ไข
มาเริ่มกันเลย!
ดูคำแนะนำวิดีโอของเราเกี่ยวกับรหัสสถานะ HTTP 302 ของเรา
รหัสสถานะ HTTP 302 คืออะไร
รหัส 302 เป็นรหัสสถานะ HTTP ประเภทหนึ่ง รหัสเหล่านี้เหมือนกับ "บันทึกย่อ" ที่เซิร์ฟเวอร์ส่งไปยังเบราว์เซอร์ของคุณ
เมื่อใดก็ตามที่คุณคลิกลิงก์หรือไปที่ URL เบราว์เซอร์ของคุณจะขอเว็บเซิร์ฟเวอร์เหมือนกัน ในทางกลับกัน เซิร์ฟเวอร์จะส่งทรัพยากรที่เกี่ยวข้องกลับ (เช่น หน้าที่คุณกำลังพยายามเข้าถึง) พร้อมกับส่วนหัวของ HTTP รหัสสถานะ HTTP อยู่ในส่วนหัวนั้น
โดยทั่วไป คุณจะไม่เห็นรหัสสถานะเหล่านี้ในหน้าเว็บ โดยปกติคุณจะเห็นเมื่อเกิดข้อผิดพลาดเท่านั้น หรือหากคุณติดตั้งส่วนขยายเบราว์เซอร์ที่ทำให้มองเห็นได้:
รหัสสถานะ 3xx (301, 302 เป็นต้น) เป็นรหัสสถานะประเภทหนึ่งที่เรียกว่า “รหัสการเปลี่ยนเส้นทาง” จะถูกส่งคืนเมื่อใดก็ตามที่เซิร์ฟเวอร์ส่งทรัพยากรใหม่กลับแทนทรัพยากรที่ร้องขอ
กล่าวคือจะแสดงเมื่อหน้าเว็บไซต์ที่คุณต้องการเข้าถึงเปลี่ยนเส้นทางคุณไปยังหน้าอื่น
ความแตกต่างที่สำคัญระหว่างรหัส 301 และรหัส 302 คือรหัสเดิมใช้สำหรับการเปลี่ยนเส้นทางถาวร ในขณะที่รหัสหลังใช้สำหรับการเปลี่ยนเส้นทางชั่วคราว
การเปลี่ยนเส้นทาง 301 ยังส่ง "ลิงก์น้ำผลไม้" ในขณะที่ 302 ไม่ผ่าน ที่มีผลกระทบอย่างมากต่อ Search Engine Optimization (SEO)
302 เปลี่ยนเส้นทางทำงานอย่างไร
เมื่อคุณตั้งค่าการเปลี่ยนเส้นทาง 302 สำหรับหน้าบนเว็บไซต์ของคุณที่ไม่สามารถใช้งานได้ชั่วคราว และผู้ใช้เยี่ยมชมหน้านั้น เว็บเซิร์ฟเวอร์ของคุณจะตอบสนองต่อเบราว์เซอร์ของผู้เยี่ยมชมด้วยส่วนหัวตำแหน่งพิเศษ ส่วนหัวนี้จะระบุ URL ใหม่ที่เบราว์เซอร์ควรเปลี่ยนเส้นทางผู้ใช้ไปแทน
ตัวอย่างเช่น สมมติว่าผู้ใช้พิมพ์ blog.example.com ลงในแถบ URL ของเบราว์เซอร์ แต่เว็บไซต์ได้รับการกำหนดค่าให้เปลี่ยนเส้นทางไปที่ blogging.example.com
การตอบสนองของเซิร์ฟเวอร์จะรวมทั้งรหัสสถานะ 302 และส่วนหัว Location: blogging.example.com การตั้งค่านี้บอกให้เบราว์เซอร์ของผู้ใช้เปลี่ยนเส้นทางคำขอนี้ไปยัง URL ใหม่แทน
แน่นอน ทั้งหมดนี้เกิดขึ้นโดยอัตโนมัติและเบื้องหลัง ผู้ใช้ไม่ควรเห็นการเล่นนี้ เบราว์เซอร์ควรนำพวกเขาไปยังแหล่งข้อมูลใหม่โดยอัตโนมัติ
เหตุใดจึงเกิดข้อผิดพลาด HTTP 302
หากมีการกำหนดค่าบางอย่างผิดพลาดในเว็บไซต์ของคุณ อาจทำให้มีการออกรหัส 302 รายการโดยมีข้อผิดพลาด หากเกิดเหตุการณ์นี้ คุณอาจพบปัญหาเช่น:
- หน้าในเว็บไซต์ของคุณที่เปลี่ยนเส้นทางผู้เยี่ยมชมของคุณไปที่อื่นเมื่อไม่ควร
- หน้าบนเว็บไซต์ของคุณที่เปลี่ยนเส้นทางผู้เยี่ยมชมของคุณไปยังแหล่งข้อมูลที่ไม่ถูกต้อง
- ข้อผิดพลาด ERR_TOO_MANY_REDIRECTS (เรียกอีกอย่างว่า “การเปลี่ยนเส้นทางวนซ้ำ”)
ปัญหาสุดท้ายเหล่านี้เป็นเพียงปัญหาเดียวที่จะแสดงหน้าข้อผิดพลาดจริง หากคุณกำลังใช้เบราว์เซอร์ Chrome หน้าข้อผิดพลาดการวนรอบการเปลี่ยนเส้นทางจะมีลักษณะดังนี้:
ใน Mozilla Firefox จะมีลักษณะดังนี้:
ปัญหาทั้งหมดข้างต้นเกิดจากการกำหนดค่าผิดพลาดบางประการ อาจเป็นข้อขัดแย้งของปลั๊กอิน การตั้งค่า URL ที่ไม่ถูกต้อง หรือไฟล์ . htaccess ที่กำหนดค่าไม่ถูกต้อง
วิธีแก้ไขข้อผิดพลาด HTTP 302 (5 วิธี)
ต่อไป เราจะแนะนำวิธีการแก้ไขปัญหาห้าวิธีซึ่งจะช่วยให้คุณทราบสาเหตุของปัญหาและแก้ไขได้
ก่อนที่เราจะเริ่มต้น ตรวจสอบให้แน่ใจว่าได้ทำการสำรองข้อมูลเว็บไซต์ของคุณอย่างครบถ้วนก่อน ด้วยวิธีนี้ หากมีอะไรผิดพลาด คุณสามารถเปลี่ยนกลับเป็นเวอร์ชันก่อนหน้าได้ตลอดเวลา คุณสามารถใช้ปลั๊กอิน WordPress เพื่อทำสิ่งนี้
1. ตรวจสอบว่าการเปลี่ยนเส้นทางถูกต้องหรือไม่
302 คำตอบมักจะไม่มีข้อผิดพลาด การเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าอื่นชั่วคราวอาจเป็นการกำหนดค่าที่ถูกต้อง และมักไม่ใช่สิ่งที่ต้องแก้ไข
เป็นเพียงข้อผิดพลาดหากเว็บไซต์ของคุณตอบสนองด้วย 302 รหัสที่ ไม่ควร ออกหรือหากทำให้เกิดการวนรอบการเปลี่ยนเส้นทาง ดังนั้น ขั้นตอนแรกคือการตรวจสอบอีกครั้งว่า URL ใดที่สร้างรหัส HTTP 302 และพิจารณาว่าการเปลี่ยนเส้นทางนั้นเหมาะสมหรือไม่
ในการดำเนินการดังกล่าว คุณสามารถไปที่หน้าต่างๆ ในเว็บไซต์ของคุณที่คุณสงสัยว่าจะออกข้อผิดพลาด 302 และดูด้วยตัวคุณเองว่าหน้าเว็บเหล่านั้นทำงานตามที่คาดไว้หรือไม่ หากหน้าไม่พร้อมใช้งานชั่วคราวเปลี่ยนเส้นทางไปยังทรัพยากรที่ถูกต้อง แสดงว่ามีการกำหนดค่าอย่างเหมาะสม
อย่างไรก็ตาม หากหน้าเปลี่ยนเส้นทางคุณไปยังแหล่งข้อมูลที่ไม่ถูกต้อง หรือเบราว์เซอร์ของคุณรายงานการวนรอบการเปลี่ยนเส้นทางโดยการเรียกหน้าข้อผิดพลาด ERR_TOO_MANY_REDIRECTS ขึ้น แสดงว่าการเปลี่ยนเส้นทางของคุณอย่างน้อยหนึ่งรายการ (หรือมากกว่า) ไม่ได้รับการกำหนดค่าที่ถูกต้องทีเดียว
2. ตรวจสอบปลั๊กอินของคุณ
หนึ่งในสาเหตุที่พบบ่อยที่สุดของข้อผิดพลาด 302 และการเปลี่ยนเส้นทางวนรอบคือปลั๊กอิน
ปลั๊กอินตัวจัดการการเปลี่ยนเส้นทางของ WordPress และเครื่องมือ SEO เช่น Yoast SEO จัดการการเปลี่ยนเส้นทางเว็บไซต์ของคุณให้คุณและช่วยให้คุณสามารถตั้งค่ากฎการเปลี่ยนเส้นทาง:

หากกฎเหล่านี้กำหนดค่าไม่ถูกต้อง หรือหากปลั๊กอินสองตัวขัดแย้งกัน อาจทำให้เกิดปัญหาที่ไม่คาดคิดได้ ดังนั้น คุณจะต้องตรวจสอบเครื่องมือที่เกี่ยวข้องแต่ละรายการที่ติดตั้งในไซต์ของคุณ
ตัวอย่างเช่น หากคุณกำลังใช้ปลั๊กอิน WordPress 301 Redirects ยอดนิยม คุณสามารถตรวจสอบการกำหนดค่าได้โดยไปที่ Settings > 301 Redirects ภายใต้ กฎการเปลี่ยนเส้นทาง คุณจะเห็นรายการกฎการเปลี่ยนเส้นทางทั้งหมดที่คุณตั้งค่าไว้:
ตรวจสอบการเปลี่ยนเส้นทางทั้งหมด 302 รายการที่นี่ และตรวจสอบว่าถูกต้องทั้งหมด
คุณจะต้องแน่ใจว่าคุณไม่ได้ตั้งค่าใดๆ ในลักษณะที่อาจทำให้เกิดการวนรอบการเปลี่ยนเส้นทาง ตัวอย่างเช่น หากตั้งค่า Page-A ให้เปลี่ยนเส้นทางไปยัง Page-B แต่ตั้งค่า Page-B ให้เปลี่ยนเส้นทางไปยัง Page-A ด้วย จะทำให้เกิดข้อผิดพลาด
หากคุณมีปลั๊กอินตัวจัดการการเปลี่ยนเส้นทางหลายตัว และคุณไม่แน่ใจว่าตัวใดทำให้เกิดปัญหา คุณสามารถลองปิดการใช้งานทีละตัวได้จากหน้า ปลั๊กอิน WordPress (โปรดสำรองข้อมูลไว้ก่อน):
หลังจากปิดใช้งานแต่ละปลั๊กอินแล้ว ให้ลองไปที่ URL ของปัญหาอีกครั้งเพื่อดูว่าข้อผิดพลาด 302 ยังคงมีอยู่หรือไม่
หากปัญหาได้รับการแก้ไขอย่างกะทันหัน คุณจะรู้ว่าปลั๊กอินตัวใดที่ทำให้เกิดปัญหา จากนั้นคุณสามารถเลือกที่จะแก้ไขปัญหาเพิ่มเติมหรือลบออกจากไซต์ของคุณได้
3. ตรวจสอบให้แน่ใจว่าการตั้งค่า URL ของ WordPress ได้รับการกำหนดค่าอย่างถูกต้อง
สาเหตุทั่วไปอีกประการของข้อผิดพลาด HTTP 302 คือการกำหนดค่าผิดพลาดในการตั้งค่า URL ของ WordPress
หากต้องการตรวจสอบ ให้ไปที่ การตั้งค่า > ทั่วไป ในแดชบอร์ด WordPress ของคุณ ที่นี่ คุณควรเห็นฟิลด์ WordPress Address (URL) และฟิลด์ Site Address (URL) :
ในกรณีส่วนใหญ่ URL ในทั้งสองฟิลด์ควรตรงกัน ตรวจสอบให้แน่ใจว่าทั้งสองอย่างเหมือนกัน รวมถึงส่วน “www” (หรือไม่มี) ก่อนชื่อโดเมน
สัมผัสประสบการณ์การสนับสนุนโฮสติ้ง WordPress ที่ยอดเยี่ยมกับทีมสนับสนุนระดับโลกของเรา! แชทกับทีมเดียวกับที่คอยสนับสนุนลูกค้า Fortune 500 ของเรา ตรวจสอบแผนของเรา
หากไม่ตรงกัน ให้อัปเดตการตั้งค่า จากนั้นตรวจสอบ URL ของหน้าที่ออกข้อผิดพลาด HTTP 302 เพื่อดูว่าได้รับการแก้ไขแล้วหรือไม่
4. ตรวจสอบการกำหนดค่าเซิร์ฟเวอร์ของคุณ
เซิร์ฟเวอร์ที่กำหนดค่าผิดบางครั้งอาจทำให้เกิดข้อผิดพลาดในการเปลี่ยนเส้นทาง 302 ครั้ง ดังนั้น ขั้นตอนต่อไปคือการตรวจสอบการกำหนดค่าเซิร์ฟเวอร์ของคุณ
หากโฮสต์ของคุณใช้เว็บเซิร์ฟเวอร์ Apache คุณสามารถทำได้โดยตรวจสอบไฟล์ . htaccess ของคุณ
ขั้นแรก เชื่อมต่อกับเซิร์ฟเวอร์ของไซต์ของคุณผ่านแผงควบคุม เช่น cPanel หรือไคลเอนต์ FTP จากนั้นไปที่ไดเร็กทอรีรากของไซต์ของคุณ ซึ่งเป็นที่เดียวกับโฟลเดอร์ wp-admin และ wp-content และค้นหาไฟล์ .htaccess :
หากคุณไม่พบไฟล์ . htaccess ที่นี่ (และคุณแน่ใจในเซิร์ฟเวอร์ Apache) คุณอาจต้องบอกให้ FileZilla แสดงไฟล์ที่ซ่อนอยู่ก่อนที่จะปรากฏในรายการไฟล์
ถัดไป เปิดไฟล์ในโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ ควรมีลักษณะดังนี้:
ตอนนี้ เราจะมองหาคำสั่ง RewriteXXX
(องค์ประกอบที่ไฮไลต์ด้านบน) โดยไม่ต้องใช้เทคนิคมากเกินไป RewriteCond
และ RewriteRule
จะใช้เพื่อดำเนินการเปลี่ยนเส้นทางจาก URL หนึ่งไปยังอีก URL
คำสั่ง RewriteCond
ระบุ URL ที่คุณต้องการเปลี่ยนเส้นทางผู้เยี่ยมชมออก จาก ในขณะที่คำสั่ง RewriteRule ระบุ URL ที่คุณต้องการเปลี่ยนเส้นทาง ไปยัง นี่คือตัวอย่าง:
RewriteEngine on RewriteCond %{HTTP_HOST} ^website.com$ RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]
แฟล็กในตอนท้าย "[R=302]" บอกเบราว์เซอร์ว่านี่คือการเปลี่ยนเส้นทาง 302 ชั่วคราว
หากคุณสังเกตเห็นชุดค่าผสม RewriteXXX ที่คล้ายกับข้างต้นในไฟล์ . htaccess ของคุณที่ไม่ควรมีอยู่ คุณสามารถแสดงความคิดเห็น บันทึกการเปลี่ยนแปลง และโหลดหน้าเว็บปัญหาซ้ำเพื่อดูว่าสามารถแก้ปัญหาได้หรือไม่
เพียงตรวจสอบให้แน่ใจว่าได้ดาวน์โหลดและบันทึกสำเนาสำรองของไฟล์ . htaccess ของคุณ ก่อนที่คุณจะทำการเปลี่ยนแปลงใดๆ ในกรณีที่มีสิ่งผิดปกติเกิดขึ้น
5. พูดคุยกับโฮสต์เว็บของคุณ
หากคุณได้ลองใช้วิธีการข้างต้นทั้งหมดแล้ว แต่ยังคงประสบปัญหาอยู่ ขั้นตอนต่อไปคือการพูดคุยกับโฮสต์เว็บของคุณ
การแก้ไขข้อผิดพลาดรหัส 302 นอกเหนือจากจุดนี้ต้องใช้ความรู้ด้านเทคนิคมากมาย ดังนั้น เว้นแต่คุณจะเป็นนักพัฒนามืออาชีพ คุณควรขอความช่วยเหลือจากผู้เชี่ยวชาญ
ที่ Kinsta เราให้การสนับสนุนอย่างจริงจัง ทีมผู้เชี่ยวชาญ WordPress ของเราพร้อมเสมอที่จะช่วยคุณแก้ไขปัญหาเช่นนี้ทุกครั้งที่เกิดขึ้น:
เราพร้อมให้บริการทุกวันตลอด 24 ชั่วโมง สิ่งที่คุณต้องทำคือลงชื่อเข้าใช้บัญชี MyKinsta ของคุณและติดต่อเราผ่านการแชทสดเพื่อติดต่อกับวิศวกรฝ่ายสนับสนุนที่สามารถช่วยเหลือได้แบบเรียลไทม์
สรุป
รหัสสถานะ HTTP 302 เป็นวิธีปกติในการเปลี่ยนเส้นทางผู้เยี่ยมชมเว็บไซต์ของคุณ อย่างไรก็ตาม ควรใช้เมื่อหน้าทรัพยากรไม่พร้อมใช้งานชั่วคราวเท่านั้น
สมมติว่าเว็บไซต์ของคุณออกรหัส 302 อันผิดพลาดหรือทำให้เกิดการเปลี่ยนเส้นทางวนซ้ำ ในกรณีดังกล่าว จำเป็นต้องแก้ไขปัญหานี้โดยเร็วที่สุด มิฉะนั้นอาจส่งผลเสียต่อ SEO และ Conversion ของคุณ
คุณสามารถปฏิบัติตามห้าขั้นตอนเหล่านี้เพื่อแก้ไขข้อผิดพลาด HTTP 302 ในเว็บไซต์ของคุณ:
- กำหนดว่าการเปลี่ยนเส้นทางเหมาะสมหรือไม่โดยตรวจสอบ URL ที่ออกการเปลี่ยนเส้นทาง 302
- ตรวจสอบปลั๊กอินของคุณเพื่อให้แน่ใจว่าการตั้งค่าการเปลี่ยนเส้นทางถูกต้อง
- ตรวจสอบให้แน่ใจว่าการตั้งค่า WordPress URL ของคุณได้รับการกำหนดค่าอย่างถูกต้อง
- ตรวจสอบการกำหนดค่าเซิร์ฟเวอร์ของคุณโดยมองหาคำสั่ง
RewriteXXX
ไม่ถูกต้องในไฟล์ . htaccess ของคุณ (เซิร์ฟเวอร์ Apache เท่านั้น) - พูดคุยกับโฮสต์เว็บของคุณเพื่อขอรับการสนับสนุนด้านเทคนิคเพิ่มเติมหากปัญหายังคงมีอยู่
คุณมีคำถามใด ๆ เกี่ยวกับข้อผิดพลาด HTTP 302 หรือไม่? แจ้งให้เราทราบในส่วนความคิดเห็น