การหยุด Microsoft Office 2010 ไม่ให้รวมกับเซิร์ฟเวอร์การโค่นล้มราวกับว่าเป็น Sharepoint


11

เรามีเซิร์ฟเวอร์ Apache Subversion ที่เราจัดเก็บเอกสารของเราทั้งหมด เรามีเอกสาร Word, Excel, PDF ฯลฯ จำนวนมากใน svn และผู้ใช้ของเราทุกคนใช้ TortoiseSVN เป็นส่วนต่อประสานกับลูกค้า ผู้ใช้จำนวนมากเหล่านั้นจะเรียกดู repo ผ่านทางเว็บเบราว์เซอร์ซึ่ง (น่าเสียดาย) มักเป็น Internet Explorer

เมื่อเร็ว ๆ นี้เราเริ่ม trialling Office 2010 (มาจาก 2003) และพบว่าเอกสารจาก repo นั้นเปิดแตกต่างกันเมื่อเรียกดูด้วย IE แทนที่จะดาวน์โหลดไฟล์ IE แล้วส่งไปยังแอพที่เหมาะสม (หลังจากนั้นควรเป็นเพียงสำเนาชั่วคราวที่จัดเก็บไว้ในเครื่อง) แต่จะส่งURLสำหรับเอกสารไปยังแอป แอปพลิเคชันจะดาวน์โหลดเอกสารจากนั้นทำการจัดการเสมือนว่ามาจากเซิร์ฟเวอร์ Sharepoint เช่นแอปพลิเคชันพยายามล็อคและอัปโหลดการเปลี่ยนแปลงที่บันทึกไว้กลับไปที่เซิร์ฟเวอร์โดยอัตโนมัติ

จาก Googling ปรากฏว่าหลายคนต้องการพฤติกรรมนี้ อย่างไรก็ตามเราต้องการปิดการใช้งาน - ไม่เหมาะกับกระบวนการที่มีอยู่ของเรา ฉันจะทำสิ่งนี้ได้อย่างไร

ฉันไม่สามารถควบคุมเครื่องไคลเอนต์ได้มากดังนั้นโซลูชันที่เกี่ยวข้องกับการปิดใช้งานคุณลักษณะการทำงานร่วมกันของเอกสาร Office ทั้งหมดเช่นนี้สำหรับลูกค้าแต่ละคนไม่ใช่สิ่งที่ฉันกำลังมองหา นอกจากนี้ฉันไม่พบอะไรมากที่ฉันสามารถทำได้นอกเหนือจากปิดใช้งาน Add-on ตัวจัดการเอกสารแคชของ Office ใน IE ตัวเลือกฝั่งไคลเอ็นต์เท่านั้นที่อาจเป็นไปได้คือตัวเลือกที่ปิดใช้งานคุณลักษณะนี้โดยเฉพาะสำหรับเซิร์ฟเวอร์ที่มีชื่อของเรา แต่ให้ไว้กับผู้อื่น

เพื่อให้ออกจากการแก้ปัญหาฝั่งเซิร์ฟเวอร์ ฉันคาดเดาว่า Office เห็นว่าเซิร์ฟเวอร์ svn มีการสนับสนุน WebDAV ดังนั้นจึงเข้าสู่เวิร์กโฟลว์การจัดการเอกสารที่คล้ายกับ Sharepoint มีวิธีใดบ้างที่จะหยุดการรวมประเภทนี้โดยไม่ปิดการใช้งานการสนับสนุน WebDAV ทั้งหมดบนเซิร์ฟเวอร์ (สมมติว่าเราสามารถทำได้) เราใช้การปรับเปลี่ยนอัตโนมัติของ svn เพียงเล็กน้อยเพื่อวัตถุประสงค์อื่น ๆ ดังนั้นจึงเป็นคุณสมบัติที่จำเป็น ฉันพบการสนทนาเกี่ยวกับการปิดใช้งานคุณสมบัติหากเป็นเซิร์ฟเวอร์ Sharepoint จริง ๆ แต่ไม่ใช่! ความเข้าใจของฉันเกี่ยวกับการทำงานประเภทนี้ (เช่นไคลเอ็นต์ Office ที่ระบุการสนับสนุน WebDAV บนเซิร์ฟเวอร์) ค่อนข้าง จำกัด ดังนั้นโปรดอธิบายเพิ่มเติมหากทำได้

ในกรณีที่มีความสำคัญการตั้งค่าเซิร์ฟเวอร์คือ:

Apache v2.2.8 และการโค่นล้ม v1.4.6 บน Ubuntu Hardy 8.04


ฉันไม่สามารถแนะนำสิ่งนี้เป็นคำตอบได้เนื่องจากมันเป็นวิธีแก้ปัญหาที่ยุ่งยากกว่า ฉันคิดว่าคุณพูดถูกเกี่ยวกับ DFAV เนื่องจาก Apache / SVN ใช้ DAV เป็นโปรโตคอลการเข้าถึง เมื่อคำนึงถึงสิ่งนี้คุณสามารถวาง Apache และใช้svnserveแทนได้
SmallClanger

ขอบคุณสำหรับคำแนะนำ แต่ svnserver ไม่ใช่ตัวเลือกสำหรับเรา เรามีการปรับแต่งมากมายที่ขึ้นอยู่กับเราโดยใช้ Apache
James Tisato

ฉันพบบทความที่มีประโยชน์มากจาก MS (ฉันประหลาดใจ!): support.microsoft.com/kb/838028 ดูเหมือนว่าเซิร์ฟเวอร์ Apache จะระบุผ่านทาง HTTP 1.1 OPTIONS ตอบกลับว่าสามารถใช้งาน WebDAV ได้และ Office ใช้ . ตัวเลือกแช่งจะพูดว่า "ฉันต้องการให้เซิร์ฟเวอร์ของฉันมี WebDAV ให้ใช้งาน แต่ฉันไม่ต้องการให้ Office ใช้งาน!"
James Tisato

คำตอบ:


13

แก้ไขมัน (ในที่สุด) http://support.microsoft.com/kb/838028อธิบายว่า Office ใช้ Microsoft Office Protocol Discovery เพื่อตรวจสอบว่าเซิร์ฟเวอร์เอกสารมีความสามารถของ WebDAV หรือไม่ ส่งคำขอ HTTP 1.1 OPTIONS และคาดว่าจะมีการตอบ 200 รายละเอียดคุณสมบัติ DAV ที่มีให้ เซิร์ฟเวอร์การโค่นล้มมี (จำกัด ) DAV รองรับและตอบกลับเช่นนี้และ Office จะใช้เพื่อเขียนกลับไปยังเซิร์ฟเวอร์โดยตรง

ทางออกที่เราใช้คือการใช้ mod_rewrite บนเซิร์ฟเวอร์ Apache เพื่อสกัดกั้นการร้องขอเหล่านี้และส่งกลับ 405 วิธีการไม่อนุญาตการตอบสนอง การกำหนดค่าการเขียนซ้ำคือ:

# Intercept Microsoft Office Protocol Discovery
RewriteCond %{REQUEST_METHOD} ^OPTIONS
RewriteCond %{HTTP_USER_AGENT} ^Microsoft\ Office\ Protocol\ Discovery [OR]
RewriteCond %{HTTP_USER_AGENT} ^Microsoft\ Office\ Existence\ Discovery [OR]
RewriteCond %{HTTP_USER_AGENT} ^Microsoft\-WebDAV\-MiniRedir.*$
RewriteRule .* - [R=405,L]

มันขัดขวางการร้องขอวิธีการตัวเลือกทั้งหมดที่มาจากตัวแทนที่มีชื่อ "Microsoft Office Protocol Discovery" และส่งกลับ 405 วิธีการแก้ปัญหานี้ได้รับการแนะนำโดยความคิดเห็นแรกใน http://rails.nuvvo.com/lesson/2318-dealing- กับไมโครซอฟท์ออฟฟิศโปรโตคอลค้นพบในราง

ขณะนี้ Office พยายามร้องขอ OPTIONS สองสามตัวปฏิเสธโดย 405 จากนั้นยกเลิกและปิดการสนับสนุน DAV ทั้งหมดสำหรับเซิร์ฟเวอร์นี้โดยเฉพาะขณะที่เปิดใช้งานสำหรับเซิร์ฟเวอร์อื่น ๆ ที่ลูกค้าอาจต้องการโต้ตอบ


ขอบคุณมาก! ในขณะที่ฉันไม่ได้ใช้การโค่นล้มฉันได้ต่อสู้กับปัญหาหลักเดียวกันและไม่สามารถค้นหาเอกสารได้จนถึงขณะนี้ ฉันยังไม่แน่ใจ 100% นี่คือมันหรือทั้งหมดแต่ดูเหมือนว่า การเปิดเอกสาร Office ที่ลิงก์บนหน้าเว็บทำให้การเชื่อมโยงหลายมิติภายใน (สัมพันธ์กันโดยไม่มีเส้นทาง) ที่อยู่ http ที่ผ่านการรับรองอย่างสมบูรณ์พร้อมการกำหนดเส้นทางแม้ว่าการคัดลอกควรดูจากแคชในเครื่อง สิ่งนี้เกิดขึ้นเฉพาะใน IE ... FF และ Chrome แสดงลิงก์ที่เสียหาย (ตามที่คาดไว้) จากแคชไฟล์ในเครื่อง ขอบคุณอีกครั้ง.
one.beat.consumer

1
แนะนำโดย @chekolyn เพิ่ม follwoing สามบรรทัดเพื่อเขียนการตั้งค่าใหม่: RewriteCond %{HTTP_USER_AGENT} ^Microsoft\ Office\ Protocol\ Discovery [OR] RewriteCond %{HTTP_USER_AGENT} ^Microsoft\ Office\ Existence\ Discovery [OR] RewriteCond %{HTTP_USER_AGENT} ^Microsoft\-WebDAV\-MiniRedir.*$
HopelessN00b

การเรียก Excel HYPERLINK () ไม่ได้สร้างคำขอ OPTIONS แต่จะสร้าง GET พิเศษ สตริงตัวแทนผู้ใช้ที่จะดูด้วยคือ "ms-office" การส่งคืนข้อผิดพลาด 405 ทำให้การเชื่อมโยงหลายมิติไม่ทำงานอย่างถูกต้อง แต่การตอบสนอง 200 เปล่าสำหรับ Office ได้ทำเคล็ดลับมันเปิดเว็บเบราว์เซอร์เริ่มต้นเกือบจะทันทีไปยัง URL (ฉันใช้ ASP.NET บน IIS ดังนั้นฉันจึง สิ่งนี้ก่อนการพิสูจน์ตัวตน)
richardtallent

อย่างไรก็ตามตอนนี้ความสามารถบางอย่างไม่มี ms-office ในอีกต่อไป ตัวอย่างเช่น 2013 ของฉันไม่ได้
mplungjan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.