Wednesday 5 July 2017

Apache ชนิด Mime ไบนารี ตัวเลือก


ในอูบุนตูฉันกำลังเรียกใช้หน้า html แบบง่ายๆที่สามารถเรียกใช้ mp4 video ได้กำหนดค่า Apache Server และเรียกใช้หน้าทดสอบง่ายๆสำหรับโลกสวัสดีการทำงานได้ดี ใน Apache Webserver ฉันอ่านว่าเราต้องเพิ่มโค้ดต่อไปนี้ลงในไฟล์ httpd. conf หรือไฟล์. htaccess ในไดเรกทอรีที่ไฟล์วิดีโอของเราอยู่ ดังนั้นคำถามของฉันคือ httpd. conf หรือ. htaccess ไฟล์นี้อยู่ที่ไหนฉันจะต้องสร้างแฟ้มเหล่านี้ด้วยตัวเองหรือจะเก็บไว้ที่ไหนสักแห่ง โค้ดของหน้า HTML ของฉันเป็นดังนี้: โปรดให้คำแนะนำแก่ฉัน แฟ้มการกำหนดค่าเริ่มต้นสำหรับไฟล์ที่กำลังทำงานโดยการติดตั้ง Apache ของคุณคือ etcapache2sites-enabled000-default เป็นความคิดที่ดีในการสำรองไฟล์ต้นฉบับก่อนเล่นรอบกับไฟล์นี้ ทุกครั้งที่คุณแก้ไขไฟล์นี้ Apache ต้องถูกรีสตาร์ทโหลดใหม่เพื่อให้การเปลี่ยนแปลงมีผล - sudo service apache2 restart (หรือ) sudo service apache2 reload ขณะที่การเปลี่ยนแปลง. htaccess ไม่จำเป็นต้องให้ Apache เริ่มทำงานใหม่ เป็น dobey กล่าวถึง. htaccess ไฟล์ไปใน DocumentRoot ของเว็บไซต์ ดูเอกสารอย่างเป็นทางการเกี่ยวกับวิธีเปิดใช้งานไฟล์. htaccess คุณต้องแก้ไขไฟล์นี้: มองหาส่วนที่มีลักษณะดังนี้: คุณต้องปรับเปลี่ยนบรรทัดที่มี AllowOverride None เพื่ออ่าน AllowOverride All. หากต้องการให้ไฟล์. htaccess ทำงานได้ตามที่ต้องการ นี้บอก Apache ว่ามันถูกอนุญาตให้. htaccess ไฟล์ไปกว่านั่งคำสั่งก่อนหน้า คุณต้องโหลด Apache ก่อนที่การเปลี่ยนแปลงนี้จะมีผล: 2009.12.08 note: ใน LAMP ดาวน์โหลดประมาณสัปดาห์ที่ผ่านมากับ Ubuntu 9.10 (Karmic) แฟ้มการกำหนดค่าเริ่มต้นคือ etcapache2sites-available000-default และรวม AllowOverride None ภายใต้ ltDirectory gt in นอกเหนือจาก ltDirectory varwwwgt นอกจากนี้ไดเร็กทอรีใน wwwvar ที่มีไฟล์. htaccess ผิดนัดเพื่อไม่ให้เซิร์ฟเวอร์ Apache เข้าถึงแบบอ่านได้ส่งผลให้เกิดข้อผิดพลาด Apache เมื่อต้องการแก้ไข sudo nautilus จากนั้นคลิกขวาที่ไดเร็กทอรีที่มีไฟล์. htacces เลือก Properties จากนั้นเลือก Permissions และ ให้กลุ่มผู้ใช้ที่คุณเข้าสู่ระบบเป็นสิทธิ์ที่ได้รับอนุญาตอย่างน้อยการอ่านสร้างการแสดงเนื้อหาต้นฉบับประเภทนี้ซึ่งสามารถใช้เป็นส่วนหัวของ Content-Type ได้ สร้างอินสแตนซ์ใหม่ของ ContentType พารามิเตอร์: mimeType - ประเภท MIME อาจไม่เป็นโมฆะหรือว่างเปล่า อาจไม่มีอักขระ ltgt, ltgt, lt, gt ที่สงวนไว้โดยข้อกำหนดของ HTTP charset - charset ส่งกลับ: ประเภทเนื้อหาสร้างอินสแตนซ์ใหม่ของ ContentType โดยไม่มี charset พารามิเตอร์: mimeType - ประเภท MIME อาจไม่เป็นโมฆะหรือว่างเปล่า อาจไม่มีอักขระ ltgt, ltgt, lt, gt ที่สงวนไว้โดยข้อกำหนดของ HTTP ส่งกลับ: ประเภทเนื้อหาสร้างอินสแตนซ์ใหม่ของ ContentType พารามิเตอร์: mimeType - ประเภท MIME อาจไม่เป็นโมฆะหรือว่างเปล่า อาจไม่มีอักขระ ltgt, ltgt, lt, gt ที่สงวนไว้โดยข้อกำหนดของ HTTP charset - charset อาจไม่มีอักขระ ltgt, ltgt, lt, gt ที่สงวนไว้โดยข้อกำหนดของ HTTP พารามิเตอร์นี้เป็นทางเลือก Returns: type type พ่น: UnsupportedCharsetException - ถูกโยนทิ้งเมื่อไม่สามารถใช้ชุดอักขระชื่อนี้ได้ในอินสแตนซ์นี้ของเครื่องเสมือน Java สร้างอินสแตนซ์ใหม่ของ ContentType พร้อมกับพารามิเตอร์ที่ระบุ พารามิเตอร์: mimeType - ประเภท MIME อาจไม่เป็นโมฆะหรือว่างเปล่า อาจไม่มีอักขระ ltgt, ltgt, lt, gt ที่สงวนไว้โดยข้อกำหนดของ HTTP params - พารามิเตอร์ ส่งกลับ: ประเภทเนื้อหาพุ่งผิดพลาด: UnsupportedCharsetException ตั้งแต่: 4.4 แยกวิเคราะห์การแสดงเนื้อหาตามต้นฉบับของ Content-Type พารามิเตอร์: s - text การส่งคืน: ประเภทเนื้อหาการพ่น: ParseException - ถ้าข้อความที่ระบุไม่แสดงค่า Content-Type ที่ถูกต้อง UnsupportedCharsetException - โยนเมื่อชุดอักขระที่มีชื่อไม่พร้อมใช้งานในอินสแตนซ์นี้ของเครื่องเสมือน Java จะแยกค่าชนิดเนื้อหาจาก HttpEntity ตามที่ระบุโดยส่วนหัว Content-Type ของเอนทิตี ส่งกลับค่า null หากไม่ได้ระบุ เอนทิตี - เอนทิตี HTTP การส่งคืน: ประเภทเนื้อหาการพ่น: ParseException - หากข้อความที่ระบุไม่ได้แสดงค่า Content-Type ที่ถูกต้อง UnsupportedCharsetException - โยนเมื่อชุดอักขระชื่อไม่พร้อมใช้งานในอินสแตนซ์นี้ของเครื่องเสมือน Java getLenient แยกค่าชนิดเนื้อหาจาก HttpEntity ส่งกลับค่า null ถ้าไม่ได้ระบุหรือไม่ถูกต้อง (ไม่สามารถแยกวิเคราะห์ได้) พารามิเตอร์: เอนทิตี - เอนทิตี HTTP Returns: ชนิดเนื้อหาเนื่องจาก: 4.4 getOrDefault แยกค่า Content-Type จาก HttpEntity หรือส่งคืนค่าดีฟอลต์ DEFAULTTEXT ถ้าไม่ได้ระบุไว้อย่างชัดเจน เอนทิตี - เอนทิตี HTTP การส่งคืน: ประเภทเนื้อหาการพ่น: ParseException - หากข้อความที่ระบุไม่ได้แสดงค่า Content-Type ที่ถูกต้อง UnsupportedCharsetException - โยนเมื่อชุดอักขระที่มีชื่อไม่สามารถใช้ได้ในกรณีนี้ของเครื่องเสมือน Java getLenientOrDefault จะดึงค่าชนิดเนื้อหาจาก HttpEntity หรือส่งคืนค่าดีฟอลต์ DEFAULTTEXT หากไม่ได้ระบุอย่างชัดเจนหรือไม่ถูกต้อง (ไม่สามารถแยกวิเคราะห์ได้) getByMimeType ส่งกลับเนื้อหาชนิดสำหรับชนิด MIME ที่กำหนด พารามิเตอร์: mimeType - ชนิด MIME Returns: ชนิดเนื้อหาหรือ null ถ้าไม่รู้จัก ตั้งแต่: 4.5 withCharset สร้างอินสแตนซ์ใหม่โดยใช้ MIME Type นี้และ Charset ที่ระบุ พารามิเตอร์: charset - charset Returns: อินสแตนซ์ใหม่ที่มี MIME type นี้และ Charset ที่ระบุ ตั้งแต่: 4.3 withCharset สร้างอินสแตนซ์ใหม่โดยใช้ MIME Type นี้และชื่อ Charset ที่ระบุ พารามิเตอร์: charset - name Returns: อินสแตนซ์ใหม่ที่มี MIME type นี้และชื่อ Charset ที่ระบุ โยนผิดพลาด: UnsupportedCharsetException - ถูกโยนเมื่อไม่สามารถใช้ชุดอักขระที่มีชื่อในเครื่องเสมือน Java นี้ได้เนื่องจาก: 4.3 withParameters สร้างอินสแตนซ์ใหม่โดยใช้ MIME type และพารามิเตอร์ที่กำหนด Params: params - Returns: อินสแตนซ์ใหม่ที่มี MIME type และพารามิเตอร์ที่ระบุ UnsupportedCharsetException เนื่องจาก: 4.4 การจัดการข้อมูลไบนารีกับ Axis2 (MTOMSwA) บทนำแม้จะมีความยืดหยุ่นการทำงานร่วมกันและการยอมรับ XML ทั่วโลก แต่ก็มีบางครั้งที่การจัดลำดับข้อมูลลงใน XML ก็ไม่สมเหตุสมผล ผู้ใช้บริการเว็บอาจต้องการส่งไฟล์แนบแบบไบนารีในรูปแบบต่างๆเช่นรูปภาพภาพวาดเอกสาร XML ฯลฯ พร้อมกับข้อความ SOAP ข้อมูลดังกล่าวมักอยู่ในรูปแบบไบนารีเฉพาะ ตามเนื้อผ้าใช้เทคนิคสองอย่างในการจัดการกับข้อมูลทึบใน XML การส่งข้อมูลไบนารีโดยค่าทำได้โดยฝังข้อมูลที่เป็นสีทึบ (แน่นอนหลังจากเข้ารหัสรูปแบบบางส่วน) เป็นองค์ประกอบองค์ประกอบหรือแอตทริบิวต์ของคอมโพเนนต์ XML ของข้อมูล ข้อได้เปรียบหลักของเทคนิคนี้คือการทำให้แอพพลิเคชันมีความสามารถในการประมวลผลและอธิบายข้อมูลโดยขึ้นอยู่กับส่วนประกอบ XML ของข้อมูลเท่านั้น XML รองรับข้อมูลทึบแสงเป็นเนื้อหาโดยใช้การเข้ารหัสข้อความ base64 หรือ hexadecimal ทั้งสองเทคนิคขยายขนาดของข้อมูล สำหรับการเข้ารหัสข้อความ UTF-8 ต้นแบบการเข้ารหัสแบบ base64 จะเพิ่มขนาดของข้อมูลไบนารีโดยมีขนาดเท่ากับ 1.33 เท่าในขณะที่การเข้ารหัสฐานสิบหกจะขยายข้อมูลเป็น 2 เท่า ปัจจัยด้านบนจะเพิ่มขึ้นเป็นสองเท่าถ้าใช้การเข้ารหัสข้อความ UTF-16 ยังกังวลเป็นค่าใช้จ่ายในการประมวลผล (ทั้งจริงและการรับรู้) สำหรับรูปแบบเหล่านี้โดยเฉพาะอย่างยิ่งเมื่อถอดรหัสกลับเป็นไบนารีดิบ การส่งข้อมูลไบนารีโดยการอ้างอิงทำได้โดยการแนบข้อมูลไบนารีบริสุทธิ์เป็นเอนทิตีทั่วไปที่ไม่ได้รับการยกเว้นภายนอกซึ่งอยู่ภายนอกเอกสาร XML และฝัง URI แบบอ้างอิงไปยังเอนทิตีเหล่านั้นเป็นองค์ประกอบหรือค่าแอตทริบิวต์ ป้องกันไม่ให้ข้อมูลที่ไม่จำเป็นและการสิ้นเปลืองพลังงานในการประมวลผล อุปสรรคหลักในการใช้อ็อบเจ็กต์ที่ไม่ผ่านการตรวจสอบเหล่านี้คือการพึ่งพา DTD ซึ่งเป็นอุปสรรคต่อการเป็นโมดูลรวมถึงการใช้ XML namespaces มีข้อกำหนดหลายประการที่นำมาใช้ในโลกของบริการเว็บเพื่อจัดการกับปัญหาการแนบไฟล์ไบนารีโดยใช้เทคนิคอ้างอิงอ้างอิง SOAP with Attachments เป็นตัวอย่างเช่น เนื่องจาก SOAP ห้ามไม่ให้มีการประกาศประเภทเอกสาร (DTD) ในข้อความจึงทำให้เกิดปัญหาในการไม่แสดงข้อมูลเป็นส่วนหนึ่งของข้อมูลข่าวสารดังนั้นจึงสร้างโมเดลข้อมูลสองรูป ภาพจำลองนี้เหมือนกับการส่งไฟล์แนบมาพร้อมกับข้อความอีเมล แม้ว่าเอกสารแนบเหล่านี้จะเกี่ยวข้องกับเนื้อหาข้อความ แต่จะไม่อยู่ในข้อความ ซึ่งทำให้เทคโนโลยีที่ประมวลผลและอธิบายข้อมูลจากคอมโพเนนต์ XML ของข้อมูลทำให้เกิดความผิดปกติ ตัวอย่างหนึ่งคือ WS-Security ที่ไหน MTOM มาใน MTOM (กลไกการเพิ่มประสิทธิภาพการส่งข้อความ SOAP) เป็นข้อกำหนดอื่นที่มุ่งเน้นการแก้ปัญหา quotAttachmentsquot MTOM พยายามใช้ประโยชน์จากสองเทคนิคดังกล่าวข้างต้นโดยพยายามผสานเทคนิคสองแบบ MTOM เป็นวิธีอ้างอิงอ้างอิง รูปแบบสายของข้อความที่เพิ่มประสิทธิภาพ MTOM จะเหมือนกับข้อความ SOAP ที่มีสิ่งที่แนบมาซึ่งจะทำให้สามารถใช้งานร่วมกันได้กับ SwA endpoints คุณลักษณะที่โดดเด่นที่สุดของ MTOM คือการใช้องค์ประกอบ XOP: Include ซึ่งกำหนดไว้ในข้อกำหนด XML (XOP) ของ XML เพื่ออ้างอิงไฟล์แนบ binary (องค์กรภายนอกที่ยังไม่ผ่านการคัดแยก) ของข้อความ ด้วยการใช้องค์ประกอบพิเศษนี้เนื้อหาไบนารีที่แนบมาจะกลายเป็นอินไลน์ (ตามค่า) โดยใช้เอกสาร SOAP แม้ว่าจะมีการแนบแยกกันอยู่ การรวมนี้จะรวมสองอาณาจักรด้วยการทำให้สามารถทำงานได้เฉพาะกับโมเดลข้อมูลเดียวเท่านั้น ช่วยให้แอ็พพลิเคชันสามารถประมวลผลและอธิบายได้โดยดูเฉพาะส่วนของ XML ทำให้การพึ่งพา DTDs ล้าสมัย เมื่อทราบน้ำหนักเบา MTOM ได้มาตรฐานกลไกการอ้างอิงของ SwA ต่อไปนี้เป็นสารสกัดจากข้อกำหนด XOP ในระดับแนวความคิดข้อมูลไบนารีนี้สามารถใช้เป็นฐานเข้ารหัส 64 บิตในเอกสาร XML ได้ เนื่องจากรูปแบบแนวคิดนี้อาจเป็นที่ต้องการในระหว่างการประมวลผลเอกสาร XML บางอย่าง (เช่นสำหรับการลงนามในเอกสาร XML) จำเป็นต้องมีการติดต่อกันแบบหนึ่งต่อหนึ่งระหว่าง XML Infosets และ XOP Packages ดังนั้นการแสดงข้อมูลเชิงแนวคิดของข้อมูลไบนารีจะเหมือนกับว่าเป็นแบบ base64-encoded โดยใช้รูปแบบบัญญัติศัพท์บัญญัติของ XML Schema base64Binary ประเภทข้อมูล (ดู XML Schema Part 2: Datatypes Second Edition 3.2.16 base64Binary) ในทิศทางตรงกันข้าม XOP สามารถเพิ่มประสิทธิภาพเฉพาะข้อมูลอินสเดตที่เข้ารหัส Base64 ได้ซึ่งอยู่ในรูปแบบคำศัพท์บัญญัติ Apache Axis2 สนับสนุนการเข้ารหัส Base64 SOAP พร้อมไฟล์แนบและ MTOM (SOAP Message กลไกการเพิ่มประสิทธิภาพการรับส่งข้อความ) MTOM กับ Axis2 Programming Model AXIOM เป็นโมเดลวัตถุ (และอาจเป็นคนแรก) ที่มีความสามารถในการเก็บข้อมูลไบนารี มีความสามารถนี้เนื่องจาก OMText สามารถเก็บเนื้อหาไบนารีดิบในรูปแบบ javax. activation. DataHandler OMText ได้รับเลือกเพื่อจุดประสงค์นี้ด้วยสองเหตุผล หนึ่งคือ XOP (MTOM) สามารถเพิ่มประสิทธิภาพเฉพาะข้อมูลอินสเดตที่เข้ารหัส Base64 ได้ซึ่งอยู่ในรูปแบบคำศัพท์ที่เป็นรูปแบบบัญญัติของประเภทข้อมูล Base64Binary XML Schema อีกอย่างหนึ่งคือการเก็บข้อมูลในทั้งผู้ส่งและผู้รับ (เพื่อเก็บเนื้อหาไบนารีในวัตถุชนิดเดียวกันโดยไม่คำนึงถึงว่าเหมาะหรือไม่) MTOM อนุญาตให้เข้ารหัสบางส่วนของข้อความซึ่งช่วยให้เราสามารถส่งข้อมูล base64encoded รวมทั้งข้อมูลไบนารีดิบที่แนบมาภายนอกซึ่งอ้างอิงโดยองค์ประกอบ quotXOPquot (เนื้อหาที่เหมาะสม) ที่จะส่งไปในข้อความ SOAP คุณสามารถระบุว่าโหนด OMText ที่มีข้อมูลไบนารีดิบหรือข้อมูลไบนารี base64encoded มีคุณสมบัติเหมาะสมที่จะได้รับการปรับให้เหมาะสมในขณะที่สร้างโหนดนั้นหรือใหม่กว่า เพื่อประสิทธิภาพสูงสุดของ MTOM ผู้ใช้ควรส่งไฟล์ไบนารีที่มีขนาดเล็กลงโดยใช้ไฟล์แนบแบบ base64encoding (ไม่ใช่การเพิ่มประสิทธิภาพ) และไฟล์ที่ใหญ่ขึ้น นอกจากนี้ผู้ใช้สามารถสร้างโหนดเนื้อหาไบนารีที่ดีที่สุดได้โดยใช้สตริงเข้ารหัส base64 ซึ่งมีเนื้อหาไบนารีที่เข้ารหัสซึ่งกำหนดให้กับชนิด MIME ของการแทนไบนารีที่เกิดขึ้นจริง Axis2 ใช้ javax. activation. DataHandler เพื่อจัดการกับข้อมูลไบนารี โหนดเนื้อหาแบบไบนารีที่ได้รับการปรับปรุงทั้งหมดจะถูกจัดเรียงเป็นสตริง Base64 ถ้าไม่มีการเปิดใช้ quotMTOM นอกจากนี้คุณยังสามารถสร้างโหนดเนื้อหาไบนารีซึ่งจะไม่ได้รับการปรับให้เหมาะกับกรณีใด ๆ จะถูกจัดเรียงเป็นลำดับและส่งเป็น Base64 Strings การเปิดใช้งาน MTOM Optimization บนฝั่งไคลเอ็นต์ใน Options ให้ตั้งค่าคุณสมบัติ quotenableMTOMquot เป็น True เมื่อส่งข้อความ เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็น True ซองจดหมาย SOAP ใด ๆ ก็ตามไม่ว่าจะมีเนื้อหาที่ดีที่สุดหรือไม่ก็ตามจะได้รับการจัดอันดับเป็นข้อความ MIME ที่ปรับให้เหมาะ MTOM Axis2 serializes โหนดเนื้อหาไบนารีทั้งหมดเป็นสายอักขระที่เข้ารหัส Base64 ไม่ว่าจะมีคุณสมบัติเหมาะสมหรือไม่ถ้าคุณสมบัติ quotenableMTOMquot ถูกตั้งค่าเป็น False หากซองจดหมายมีรายการข้อมูลองค์ประกอบใด ๆ ของชื่อ xop: รวม (ดูการบรรจุที่เพิ่มประสิทธิภาพแบบไบนารี XML-2 XOP Infosets Constructs) ผู้ใช้ไม่จำเป็นต้องระบุอะไรเพื่อให้ Axis2 รับข้อความที่เพิ่มประสิทธิภาพ MTOM Axis2 จะระบุและจัดลำดับตามลำดับโดยอัตโนมัติเมื่อ MTOM ถึงข้อความ การเปิดใช้งานการเพิ่มประสิทธิภาพ MTOM บนฝั่งเซิร์ฟเวอร์เซิร์ฟเวอร์ Axis 2 จะระบุข้อความที่เพิ่มประสิทธิภาพ MTOM ที่เข้ามาโดยอัตโนมัติตามประเภทเนื้อหาและจะเรียงตามลำดับเวลาตามลำดับ ผู้ใช้สามารถ enableMTOM ฝั่งเซิร์ฟเวอร์สำหรับข้อความขาออกเพื่อ enableMTOM ทั่วโลกสำหรับบริการทั้งหมดผู้ใช้สามารถตั้งค่าพารามิเตอร์ quotenableMTOMquot เป็น True ใน Axis2.xml เมื่อตั้งค่าข้อความขาออกทั้งหมดจะถูกจัดเรียงเป็นลำดับและส่งเป็นข้อความ MIME ที่ปรับแต่ง MTOM หากไม่มีการตั้งค่าข้อมูลไบนารีทั้งหมดในโหนดเนื้อหาไบนารีจะได้รับการจัดอันดับเป็นสตริงที่เข้ารหัส Base64 การกำหนดค่านี้สามารถ overriden ใน services. xml บนพื้นฐานของบริการและต่อการดำเนินการ คุณต้องรีสตาร์ทเซิร์ฟเวอร์หลังจากตั้งค่าพารามิเตอร์นี้ การเข้าถึงข้อมูลไบนารีที่ได้รับ (ตัวอย่างโค้ด)

No comments:

Post a Comment