แก้ไขการตรวจสอบโฮสต์ WOPI ของ CODE โดยการจับคู่ต้นทางของโฮสต์

เมื่อ Collabora Online CODE แจ้งว่า “Unauthorized WOPI host” ให้เพิ่มโฮสต์ที่ใช้จัดเก็บไฟล์จริง—โดยปกติคือ Nextcloud origin ของคุณ—ลงในรายการอนุญาต WOPI host ของ CODE โฮสต์ดังกล่าวต้องตรงกับ origin ที่ CODE ได้รับในคำขอ WOPI ไม่ใช่ URL สาธารณะของเซิร์ฟเวอร์ Collabora ใน Docker นั้น โดยทั่วไปจะกำหนดค่านี้ด้วยaliasgroup1ตัวแปรสภาพแวดล้อม

ตัวอย่างกล่องโต้ตอบคำเตือนในโปรแกรมแก้ไขเอกสารที่แสดงข้อความ “โฮสต์ WOPI ไม่ได้รับอนุญาต โปรดลองอีกครั้งในภายหลัง”
คำเตือนนี้ระบุว่าการตรวจสอบสิทธิ์โฮสต์ WOPI ล้มเหลว

รหัสใดที่ปฏิเสธ

WOPI ย่อมาจาก Web Application Open Platform Interface ซึ่งเป็นโปรโตคอลที่เซิร์ฟเวอร์สำนักงานใช้ในการเปิดและบันทึกไฟล์ผ่านแพลตฟอร์มจัดเก็บข้อมูลโฮสต์ WOPIคือแพลตฟอร์มจัดเก็บข้อมูลนั้น เช่น Nextcloud CODE จะตรวจสอบโฮสต์ที่ระบุในคำขอ WOPI กับโฮสต์ที่เชื่อถือได้ หากคำขอระบุชื่อโฮสต์ที่ไม่ถูกต้องcloud.example.comแต่ CODE ถูกตั้งค่าให้เชื่อถือได้เฉพาะโฮสต์ที่ไม่ถูกต้องเท่านั้นoffice.example.comโปรแกรมแก้ไขสามารถปฏิเสธการเชื่อมต่อก่อนที่จะเปิดได้

สำหรับการตั้งค่าแบบโฮสต์เอง ชื่อโฮสต์ในคำขออาจเป็นชื่อภายในของ Docker เช่นnextcloudแทนที่จะเป็นชื่อโฮสต์ที่เบราว์เซอร์มองเห็นได้ การใช้พร็อกซีแบบย้อนกลับ พอร์ตที่แตกต่างกัน หรือ URL สาธารณะและภายในที่แยกจากกัน ก็สามารถทำให้ต้นทางแตกต่างกันได้เช่นกัน ควรตั้งค่าสิ่งที่คำขอใช้จริง ไม่ใช่สิ่งที่ดูเหมือนจะเป็นชื่อเซิร์ฟเวอร์ "หลัก"

พบว่าโฮสต์ CODE กำลังปฏิเสธ

  1. จำลองข้อผิดพลาดขึ้นมาหนึ่งครั้ง จากนั้นตรวจสอบบันทึกคอนเทนเนอร์ CODE ในช่วงเวลาดังกล่าว หากใช้ Docker Compose ให้รันคำสั่ง โดยdocker compose logs --since=10m collaboraแทนที่collaboraด้วยชื่อบริการของคุณ
  2. มองหาข้อความลักษณะนี้No acceptable WOPI hosts found matching the target host [cloud.example.com] in configบันทึกโฮสต์เป้าหมายที่แสดงในวงเล็บ อย่าคัดลอกหรือแชร์ URL ของ WOPI ทั้งหมด เพราะอาจมีโทเค็นการเข้าถึงที่มีอายุสั้นอยู่
  3. เปรียบเทียบชื่อโฮสต์และรูปแบบนั้นกับ URL ที่การผสานรวมพื้นที่จัดเก็บข้อมูลของคุณส่งไปยัง CODE ใน Nextcloud คำแนะนำในการแก้ไขปัญหาแนะนำให้ตรวจสอบว่า URL ที่กำหนดค่าไว้นั้นเป็น URL ของ Nextcloud และ CODE สามารถเข้าถึงได้ ตรวจสอบWOPISrcโฮสต์ หากมีอยู่ในบันทึกการผสานรวมของคุณ โดยเก็บโทเค็นสตริงคำค้นหาไว้เป็นส่วนตัว
หน้าต่างเทอร์มินัลแสดงรูปแบบบันทึกตัวอย่าง: ไม่พบโฮสต์ WOPI ที่ยอมรับได้ซึ่งตรงกับโฮสต์เป้าหมาย [cloud.example.com] ในการกำหนดค่า
โฮสต์เป้าหมายที่อยู่ในวงเล็บคือค่าที่จะนำไปเปรียบเทียบกับโฮสต์ WOPI ที่กำหนดค่าไว้ใน CODE ซึ่งเป็นรูปแบบบันทึกตัวอย่าง

อนุญาตให้ใช้แหล่งกำเนิดที่ถูกต้องในโค้ด

สำหรับอิมเมจ Docker อย่างเป็นทางการของ CODE ให้ตั้งaliasgroup1ค่าแหล่งที่มา WOPI ที่เชื่อถือได้ให้ถูกต้อง สำหรับการติดตั้ง Nextcloud เพียงครั้งเดียว บริการ Compose สามารถประกอบด้วย:

services:
  collabora:
    image: collabora/code
    environment:
      aliasgroup1: "https://cloud.example.com:443"

แทนที่ตัวอย่างด้วยโฮสต์ Nextcloud จริงของคุณ รวมถึงรูปแบบและพอร์ตที่คำขอ WOPI ใช้ คงแท็กรูปภาพ การตั้งค่าผู้ดูแลระบบ เครือข่าย และตัวเลือกบริการอื่นๆ ที่มีอยู่ในไฟล์ Compose ของคุณ ตัวอย่างนี้ใช้ต้นทาง HTTPS ที่พอร์ต 443 การใช้งานที่แตกต่างกันอาจใช้พอร์ตอื่นหรือต้นทางภายในก็ได้

ตัวแก้ไข YAML แสดงค่า aliasgroup1 ที่ตั้งค่าเป็นต้นทาง Nextcloud ตัวอย่าง https://cloud.example.com:443
สำหรับโอริเอนต์ Nextcloud เดียว ชื่อแทน Docker group1 ของ CODE ควรตรงกับโฮสต์ที่ใช้ในคำขอ WOPI

หลังจากแก้ไขไฟล์ Compose แล้ว ให้สร้างคอนเทนเนอร์ CODE ขึ้นใหม่เพื่อให้ได้รับสภาพแวดล้อมที่อัปเดตแล้ว:

docker compose up -d --force-recreate collabora

ใช้ชื่อบริการ Compose จริงของคุณแทนที่collaboraการรีสตาร์ทธรรมดาอาจไม่โหลดค่าสภาพแวดล้อมคอนเทนเนอร์ที่เปลี่ยนแปลง การสร้างบริการใหม่จะใช้การกำหนดค่าที่อัปเดตแล้ว หากคุณกำหนดค่า CODE ผ่านไฟล์ XML ให้ตรวจสอบstorage.wopiกลุ่มนามแฝงในการกำหนดค่าที่มีผลแทน คู่มือ SDK อย่างเป็นทางการของ Collabora จะอธิบายกลุ่มนามแฝง Docker และนามแฝงโฮสต์ WOPI โปรดปฏิบัติตามไวยากรณ์สำหรับเวอร์ชัน CODE ที่คุณใช้งาน

ควรแยกรายการอนุญาตทั้งสองรายการออกจากกัน

Collabora และ Nextcloud ต่างก็สามารถบังคับใช้ข้อจำกัดที่เกี่ยวข้องกับ WOPI ได้ แต่ทั้งสองแพลตฟอร์มตอบคำถามที่แตกต่างกัน:

การตั้งค่าสิ่งที่มันตรวจสอบการแก้ไขทั่วไป
CODE WOPI host allow-list ( aliasgroup1)CODE ยอมรับชื่อโฮสต์จัดเก็บข้อมูลใดในคำขอ WOPIอนุญาตให้ส่งต้นทาง Nextcloud จริงไปยัง CODE
Nextcloud “รายการอนุญาตสำหรับคำขอ WOPI”ที่อยู่ IP ต้นทางใดบ้างที่สามารถส่งคำขอ WOPI ไปยัง Nextcloud ได้อนุญาตให้ Nextcloud เข้าถึงที่อยู่ดังกล่าวสำหรับคอนเทนเนอร์ CODE หรือพร็อกซี
ตัวอย่างหน้าการตั้งค่าการดูแลระบบ Nextcloud ที่แสดงส่วนของ Office และช่องป้อนข้อมูล “รายการอนุญาตสำหรับคำขอ WOPI”
การตั้งค่า Nextcloud แยกต่างหากนี้จำกัดที่อยู่ต้นทางที่อนุญาตให้ส่งคำขอ WOPI ซึ่งไม่ใช่รายการชื่อโฮสต์ WOPI ที่เชื่อถือได้ของ CODE

การเปลี่ยนรายการอนุญาต IP ต้นทางของ Nextcloud จะไม่แก้ไขปัญหาที่ CODE ปฏิเสธชื่อโฮสต์ ในทางกลับกัน การเพิ่มชื่อโฮสต์ลงใน CODE ก็ไม่ได้อนุญาตให้ IP ต้นทางของ CODE เข้าถึง Nextcloud ได้ เอกสารของ Nextcloud แนะนำให้จำกัดคำขอ WOPI เฉพาะที่อยู่ IP ของเซิร์ฟเวอร์ Collabora เท่านั้น ให้ใช้ที่อยู่ IP ที่ Nextcloud ตรวจพบ ซึ่งอาจแตกต่างกันเมื่อมีการใช้งานคอนเทนเนอร์หรือพร็อกซีแบบย้อนกลับ

ตรวจสอบอย่างรวดเร็วก่อนปิดเหตุการณ์

  • เป้าหมายระบุcloud.example.comว่า:อนุญาตโฮสต์ Nextcloud และต้นทางที่เหมาะสมในโค้ด
  • ข้อความเป้าหมายnextcloud:โค้ดอาจกำลังรับชื่อโฮสต์เครือข่าย Docker; ตัดสินใจว่าแหล่งที่มาภายในนั้นเป็นสิ่งที่ตั้งใจไว้หรือไม่ จากนั้นกำหนดค่าโฮสต์ที่เชื่อถือได้ที่เกี่ยวข้องและตรวจสอบให้แน่ใจว่าสามารถเข้าถึง DNS/เครือข่ายได้
  • เป้าหมายตรงกัน แต่การปฏิเสธยังคงเหมือนเดิม:โปรดยืนยันว่าตัวแปรที่แก้ไขนั้นเป็นส่วนหนึ่งของบริการ CODE ที่กำลังทำงานอยู่ ว่า Compose ได้สร้างคอนเทนเนอร์ขึ้นใหม่ และไม่มีการกำหนดค่าสภาพแวดล้อมหรือ XML ในภายหลังมาแทนที่การตั้งค่านี้
  • หากบันทึกการเปลี่ยนแปลงไปเป็นข้อผิดพลาดของ DNS, TLS, การหมดเวลา หรือ CheckFileInfo:การตรวจสอบการอนุญาตโฮสต์อาจผ่านแล้ว โปรดตรวจสอบการแก้ไขชื่อ การเชื่อถือใบรับรอง การกำหนดเส้นทาง หรือการตอบสนองข้อมูลไฟล์ของการรวมระบบจัดเก็บข้อมูล แทนที่จะขยายรายการโฮสต์ WOPI
  • Nextcloud รายงานว่ามีที่อยู่คำขอที่ไม่ได้รับอนุญาต:โปรดตรวจสอบรายการ IP ต้นทางที่อนุญาตของ Nextcloud และ IP ไคลเอ็นต์ที่ Nextcloud เห็นจริง

อย่าแก้ปัญหาความไม่ตรงกันด้วยการเชื่อถือโฮสต์ทุกตัวหรือใช้สัญลักษณ์ตัวแทนแบบไม่จำกัดในการใช้งานจริง ควรจำกัดรายการที่อนุญาตไว้เฉพาะแหล่งที่มาของข้อมูลที่รู้จักเท่านั้น หากตั้งใจใช้โฮสต์จัดเก็บข้อมูลหลายตัว ให้กำหนดค่ากลุ่มนามแฝงตามเอกสารสำหรับเวอร์ชัน CODE ที่ติดตั้งไว้แทนที่จะเดาพฤติกรรมของสัญลักษณ์ตัวแทน

ตรวจสอบการแก้ไข

เปิดเอกสารผ่านการผสานรวม Nextcloud เดียวกันกับที่เกิดปัญหา จากนั้นตรวจสอบบันทึก CODE ล่าสุด: ข้อความปฏิเสธ “No acceptable WOPI hosts” ควรหายไปแล้ว ยืนยันว่าเอกสารโหลดและบันทึกได้ หากมีข้อผิดพลาดใหม่ปรากฏขึ้น ให้ใช้ข้อความนั้นเพื่อระบุขั้นตอนต่อไป สำหรับการตรวจสอบโฮสต์สองครั้งและขั้นตอนการแก้ไขปัญหา Nextcloud โปรดดูที่ การแก้ไขปัญหา Nextcloud Officeและการกำหนดค่า Nextcloud Officeสำหรับกลุ่มนามแฝง Docker ของ CODE โปรดดูคู่มือ Collabora Online SDK 25.04ใช้เอกสารที่ตรงกับเวอร์ชันที่ติดตั้งของคุณหากการกำหนดค่าแตกต่างกัน

ฝากความเห็น

กู้คืนฟังก์ชันคัดลอกและวางระหว่าง Collabora และแอปพลิเคชันบนเดสก์ท็อป

กู้คืนฟังก์ชันคัดลอกและวางระหว่าง Collabora และแอปพลิเคชันบนเดสก์ท็อป

ทดสอบคลิปบอร์ดของระบบ ปรับสิทธิ์การเข้าถึงของเบราว์เซอร์ และระบุว่าเมื่อใดที่การผสานรวม Collabora ที่ฝังอยู่จำเป็นต้องมีการเปลี่ยนแปลงนโยบาย iframe

ทำให้สามารถใช้ฟอนต์แบบกำหนดเองได้ใน Collabora CODE Docker

ทำให้สามารถใช้ฟอนต์แบบกำหนดเองได้ใน Collabora CODE Docker

ติดตั้งไฟล์ฟอนต์ลงใน Docker และ systemplate ของ Collabora เพื่อให้แบบอักษรที่กำหนดเองปรากฏในโปรแกรมแก้ไขและแสดงผลได้อย่างถูกต้องในเอกสาร

กู้คืนการตั้งค่า Collabora CODE โดยไม่สูญเสียการเปลี่ยนแปลงการปรับใช้

กู้คืนการตั้งค่า Collabora CODE โดยไม่สูญเสียการเปลี่ยนแปลงการปรับใช้

สำรองข้อมูล coolwsd.xml และซอร์สโค้ดสำหรับการปรับใช้ กู้คืนอย่างปลอดภัย และตรวจสอบโค้ดก่อนที่ผู้ใช้จะกลับมาแก้ไขอีกครั้ง

แก้ไขการตรวจสอบโฮสต์ WOPI ของ CODE โดยการจับคู่ต้นทางของโฮสต์

แก้ไขการตรวจสอบโฮสต์ WOPI ของ CODE โดยการจับคู่ต้นทางของโฮสต์

อนุญาตให้ใช้ Nextcloud หรือ WOPI ต้นทางที่ถูกต้องในโค้ด จากนั้นตรวจสอบรายการอนุญาตโฮสต์ที่ใช้งานอยู่ และแยกแยะความแตกต่างจากข้อจำกัด IP ต้นทางของ Nextcloud

แก้ไขข้อผิดพลาด “นี่มันน่าอายจัง” ของ Collabora

แก้ไขข้อผิดพลาด “นี่มันน่าอายจัง” ของ Collabora

ตรวจสอบการเชื่อมต่อเบราว์เซอร์, WOPI และ WebSocket ของ Collabora เพื่อหาสาเหตุที่เอกสารเปิดไม่ได้ จากนั้นใช้การแก้ไขที่ตรงกับการตั้งค่า Nextcloud ของคุณ

เรียกใช้งาน Collabora Online บนโหนด Kubernetes

เรียกใช้งาน Collabora Online บนโหนด Kubernetes

ติดตั้ง Collabora CODE replicas ด้วย Helm เก็บเอกสารแต่ละฉบับไว้ใน pod เดียวผ่าน WOPI affinity และตรวจสอบ ingress การจัดวางโหนด และการแก้ไขใน Nextcloud

กู้คืนการเชื่อมต่อ WebSocket ของ Collabora ผ่านพร็อกซี

กู้คืนการเชื่อมต่อ WebSocket ของ Collabora ผ่านพร็อกซี

ตรวจสอบการเชื่อมต่อซ็อกเก็ตที่ล้มเหลวจากเบราว์เซอร์ไปยัง coolwsd จากนั้นจับคู่เส้นทางพร็อกซีแบบย้อนกลับกับเวอร์ชัน Collabora ของคุณ รวมถึงการเปลี่ยนแปลง Apache ใน CODE 26.04 ด้วย

แก้ไขข้อผิดพลาดการตรวจสอบ WOPI โดยตรวจสอบคีย์ การค้นหา และ URL

แก้ไขข้อผิดพลาดการตรวจสอบ WOPI โดยตรวจสอบคีย์ การค้นหา และ URL

ตรวจสอบหาสาเหตุของความล้มเหลวในการตรวจสอบความถูกต้องของ Collabora WOPI ที่เกิดจากคีย์ไม่ตรงกัน ข้อมูลการค้นหาที่ล้าสมัย การคลาดเคลื่อนของเวลา หรือการเปลี่ยนแปลง URL พร็อกซี โดยไม่ลดทอนประสิทธิภาพการตรวจสอบความถูกต้อง

แก้ไขปัญหาการแสดงผลผิดพลาดของเมนูเลือกขนาดตัวอักษรใน Collabora Online

แก้ไขปัญหาการแสดงผลผิดพลาดของเมนูเลือกขนาดตัวอักษรใน Collabora Online

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

เชื่อมต่อ Nextcloud กับคอนเทนเนอร์ Collabora CODE ที่ติดตั้งเอง

เชื่อมต่อ Nextcloud กับคอนเทนเนอร์ Collabora CODE ที่ติดตั้งเอง

ติดตั้งใช้งาน Collabora CODE ด้วย Docker เชื่อมต่ออย่างปลอดภัยกับ Nextcloud Office และตรวจสอบความถูกต้องของการแก้ไขเอกสารด้วยการตรวจสอบ WOPI และพร็อกซีที่ใช้งานได้จริง