экспортын нь тусламж

Блог: http://www.экспортын нь.org

и-мэйл: exportit.ddcs@gmail.com

экспортын нь програм

нууцлалын бодлого

дэлхийн тодорхойлолт

Энэ нь өөр Android систем гэх мэт өөр бусад төхөөрөмж дээр өөрийн Андройд утас, таблет байрлах таны мэдээллийг ашиглахыг зөвшөөрөх зэрэг гол зорилт байдаг эсвэл таны компьютер, эсвэл хэвлэл мэдээллийн таны ТВ дээр нийцтэй юм бол. Тэр нь, энэ нь хамгийн стандарт протоколууд, UpnP болон HTTP ашигладаг.

экспортын нь сервер болон клиент (таны Android ширээн дээр хоёр дүрс) хэрэгжүүлдэг. сервер, видео, аудио, зураг файлуудын жагсаалтыг барих болон нэмэлт PDF болон Э-файлууд нь таны Android системд олж болно. тэдний шинж чанар бүхий Эдгээр файлуудын жагсаалт нь санах ойд тогтоосон байна болон UpnP лавлах үйлчилгээ болон HTTP сервер дамжуулан нийтэлсэн байна.

файлууд нь зөвхөн дөрвөн ангилалд тархсан байна: видео файлууд (mp4, webm болон 3gpp) аудио файлууд (mp3, Ogg болон m4a), зураг файлууд (JPEG, GIF эсвэл PNG) болон Э-номыг (PDF, БНХАУ, EPUB, PDF, Mobi болон djvu).

сервер файлуудын мянган удирдах зорилготой биш юм, хэдэн зуун бид гар утас, таблет дээр нь ихэвчлэн юу шиг харагдаж байна.

Хэрхэн ашиглах эхлэх

Юуны өмнө, зүгээр л серверийг эхлүүлж, эхний үйл явцын эцэст нь хүлээх хэрэгтэй. Хэрэв та Wi-Fi буюу Mobile сүлжээнд байгаа бол та байдал, түүнийг оролдох хаягаас шалгаж болно. Форт хүмүүсийн ихэнх нь сервер Mobile сүлжээнд нь боломжгүй юм. Та эхлээд таны сервер, орон нутгийн вэб хөтчийг чиглүүлж нь тараах ямар шалгаж болно URL сервер цонхоор явж дараа (бодит сервер цаана нь ажиллаж байгаа). Энэ нь таны хөтөч HTML хуудсанд нэвтрэхийн тулд IPv6 өөртөө эргэн холбогдох хаягийг ашиглах бас боломжтой байдаг "http://[::1]:8192" шиг URL нь.

Хоёр дахь алхам болгож, Хэрэв та өөрийн серверийн нэрийг өөрчилж, магадгүй таны хэл, төхөөрөмж үсгийн хэмжээг тааруулах сервер тохиргоог ашиглаж болно.

Дараагийн алхам бол бүх төрлийн хандах администратор зэрэг хэрэглэгчийн нэр болон нууц үгээ тодорхойлоход бүрдэнэ.

Хэрэв энэ нь ажиллаж үед та тодорхой ангилалд хандах нь нэмэлт хэрэглэгчийн нэрийг тодорхойлж болно.

Та Интернэтээс хандах байх нь таны гэр Wi-Fi дээр холбогдсон үед Эцэст нь та "портын зуучийн" тодорхойлж болно. Та UPnP дэмжлэгтэйгээр бүрэн програм ашиглаж байгаа бол, та тохиргооны бус тэг порт, код бүхий загварыг тодорхойлох болон яаж ажилладаг бол консол дээр шалгах л хэрэгтэй. чөлөөт програмын тусламжтай та гараар таны ADSL чиглүүлэгчийг тохируулах хэрэгтэй. Энэ нь сайн харагддаг үед та түүнийг гэрээсээ та ямар нэгэн вэб хөтөч нь Javascript дэмжлэгтэйгээр үнэ төлбөргүй олон нийтийн вэб прокси ашиглаж оролдож болно.

HTTPS дэмждэг боловч улмаас энгийн HTTP харьцуулахад ухаалаг гар утас, ядуу тоглолт ашиглах төвөгтэй хэвийн хэрэглэгчдийн хувьд хамгийн шилдэг гэж харж байна.

порт дамжуулах болон нэвтрэлт танилт ажиллаж байгаа үед та "клуб" сонголтыг интернэтэд хялбар байх, www.ddcs.re таны мэдээллийг хэвлэн нийтлэх ашиглаж болно. Өөрийн сервер нь таны өөрийн гадаад IP хаяг нь таны Wifi сүлжээгээр хандах биш юм, учир нь вэб прокси ашиглаж шаарддаг тест хийхийн тулд. Энэ сонголт нь зөвшөөрөл нь зөвхөн таны серверийн нэр, жижиг тайлбар ял болон дүрс нь таны дүр төрх нэг тодорхойлсон нь зөв сервер шугам дээр дарж, IP хаяг болон портын дугаарыг нь өөрчлөх URL тархалтыг зайлсхийх.

Техникийн суурь

UPnP дэмжлэг Teleal Cling 1.0.5 (Copyright (C) 2010 оны Teleal GmbH, Швейцар) өгсөн бөгөөд HTTP Server орой дээр барьсан байна NanoHTTPD хувилбар 1.25, Зохиогчийн эрх 2001,2005-2012 Jarno Elonen, 2010 оны Konstantinos Togias. Тиймээс энэ програм LGPL програм хангамжийг агуулдаг. Аль аль нь өөрчлөгдсөн хувилбарууд байдаг уугуул бус, код. Teleal Наалдах номын сангийн зөвхөн нэг лааз файл clingcore, clingsupport (1.0.5) -аас програмд шаардагдах хэд хэдэн өөрчлөлт нь барьсан бөгөөд teleal нийтлэг (1.0.14) чичиргээн файлууд ... NanoHttpd, "HEAD" аргыг дэмжих DLNA HTTP толгойн, хүсэлт бүртгэлийг нэмэх, анхны гэрийн хуудсыг хангах өөрчлөгдсөн байна. эх код нь гүйцэтгэгдэнэ гэж байдаг.

санал ашигласан бүх сэтгэл хөдлөлүүд боловсруулж, Энрико Gollnow (Erni) хийсэн байна. түүнд болон түүний Инээмсэглэлүүд (http://www.gomotes.com) талаар дэлгэрэнгүй мэдээллийг олж түүний вэб хуудсанд хандана.

Нууц үг шифрлэлт нь ердийн вэб хөтөч талд, сервер талд SpongyCastle жава номын сан дээр Том Wu-ын jsbn номын сан (Javascript BigInteger болон RSA) ашигладаг.

Энэ програм нь JmDNS-ийг JAV-д олон үйлчилгээг нээх, бүртгэх үйлчилгээг ашигладаг. Энэ номын сан Apple-ийн Bonjour протоколоор бүрэн зохицож чаддаг. Артур ван Хофф, Рик Блэйр, Кай Креерер нарт Апачигийн Лиценз, Хувилбар 2.0-ийн дагуу лицензтэй энэ номын сангуудад талархал илэрхийлье.

Энэхүү програм нь MIT лицензийн дагуу Julien 'delphiki' Villetorte-ийн боловсруулсан HTML5 видео тоглуулагчийг ашигладаг бөгөөд энэхүү гайхамшигтай ажилд ашиглах зөвшөөрөл, түүнийг ашиглах зөвшөөрөлтэй бүх талархалаа илэрхийлье.

Бид PDF файлуудыг WebView-ээр харуулахын тулд PDF.JS ашиглаж байна. Энэхүү Нээлттэй эхийн төсөл нь Apache хувилбар 2 лицензтэй. PDF.js (https://mozilla.github.io/pdf.js/) нь HTML5-ээр бүтээгдсэн зөөврийн баримт бичгийн формат (PDF) харагч юм. PDF.js нь олон нийтэд тулгуурласан бөгөөд Mozilla дэмждэг.

epubjs-reader багцыг (https://github.com/futurepress/epubjs-reader) epub цахим номонд ашигладаг бөгөөд номуудыг WebView дээр харуулдаг. Энэ программ хангамжийг MIT лицензээр авах боломжтой.

Бид одоо Acme4J-ийг RFC8555 (https://tools.ietf.org/html/rfc8555) -д заасны дагуу _Automatic Certificate Management Environment_ (ACME) протоколд Java Client (https://shredzone.org) болгон ашиглаж байна. . ACME нь гэрчилгээ олгох байгууллага (CA) болон өргөдөл гаргагч нь баталгаажуулах, гэрчилгээ олгох үйл явцыг автоматжуулахад ашиглаж болох протокол юм. Энэ нь Let's Encrypt-тэй холбоогүй эсвэл дэмжигдээгүй, бие даасан нээлттэй эхийн программ юм.

Acme4J-д Jose4j номын сан (https://bitbucket.org/b_c/jose4j/wiki/Home) хэрэгтэй бөгөөд энэ нь JSON Web Token (JWT) болон JOSE тодорхойлолтын багцын бат бөх, ашиглахад хялбар нээлттэй эхийн хэрэгжилт юм.

бүрэлдэхүүн хэсэг

хоёр гол бүрэлдэхүүн хэсгүүд нь суулгасны дараа, та өөрийн компьютер дээр хоёр дүрс байна, сервер болон клиент бөгөөд.

сервер үнэндээ бол урт удаан ажиллаж байгаа үйлчилгээг бодит Хэвлэл мэдээллийн сервер UPnP болон HTTP үйлчилгээг үзүүлж эхэлнэ. Энэ нь үйлчилгээ, цаана нь ажиллаж байна зүгээр л нэг жижиг мэдэгдэл дүрс Android taskbar дээр тогтоосон байна. сервер нэг чухал дэд даалгавар, тохиргоо юм. Өөрийн бүх өгөгдөл анхдагчаар сервер экспортын Орон нутгийн Wifi сүлжээний файлууд. Та / сонгож тохиргоог файлуудыг хэдийг хасна болно.

UPnP серверүүд тараасан үйлчлүүлэгч үйл явц нь өгөгдөл, орон нутгийн (Wifi) сүлжээн дээр олдлоо. болон mp4, webm эсвэл 3gpp видео харагдаж байгаа нь Media Player шийдлүүдийг шиг байна mp3, Ogg эсвэл m4a аудио файлууд, зураг харуулах нь WebView диалог цонх сонсох. Үүнээс гадна, суурь үйлчилгээний серверээс файлыг татаж авах эхлүүлж болно. сервер өмнө эхэлсэн үед үйлчлүүлэгч UPnP үйлчилгээг эхлүүлэх боловч өгөгдлийн файлууд, хоосон сервер нь төрлийн түгээх үгүй. Энэ үйлчилгээ нь хандах хэрэгтэй бусад UPnP серверүүд.

зөвшөөрлүүд болон нөөц

системийн тохиргоо, дараа нь дэвшилтэт тохируулгууд нь, хэрэв танд батарейний менежер олж болно. сервер бий болгох, байнга ажиллаж байгаа байлгахын тулд та эрчим хүчний төлөвлөгөөг гүйцэтгэл сонгож, хамгаалж програм болон эрчим хүч эрчимтэй програм энэ апп идэвхжүүлэх хэрэгтэй.

Хэрэв та Wi-Fi идэвхтэй байх хэрэгтэй боломжтой бол таны төхөөрөмж унтаж байхад бөгөөд сервер дээр ажилладаг, мөн гадна, таны төхөөрөмжийн нэгдсэн DLNA стекийг байгаа бол, та системийн тохиргоо нь "ойр төхөөрөмжүүдийн" эрж хайх хэрэггүй.

сервер файл систем уруу хандах шаардлагатай болон Wi-Fi буюу гар утасны сүлжээнд холбогдсон бол өгөгдөл дамжуулах идэвхжүүлсэн байгаа бол гэх мэт төрийн өөрчлөлтийг илрүүлэх утасны тохиргоог унших. сервер гадаад IP хаяг Access_Coarse_Location хамт (тохиргооны тохируулгыг), улс орны кодыг өөрчлөгдсөн үед мессеж илгээж болно нэмэлт, (А тодорхой байршил биш, хоёр захидал улс орны код). үйлчлүүлэгч програм татаж авах файлууд хэмнэх гадаад хадгалалтын бичих зөвшөөрөл, хөгжим сонсох үед муруйг харагдаж байгаа бүртгэлийн аудио зөвшөөрөл ашигладаг.

сервер хэрэглээ

Клиент нь экспортын хэрхэн ашиглах вэ

экспортын нь сервер рүү хандах нь таны вэб хөтчийг ашиглах

Олон дамжуулалтын сувгийн функцэд FFmpeg ашиглаж байна

стандарт тохиргоо

Нүүр хуудас Wifi сүлжээний интернэтэд нийтлэх

Таны экспортын нь сервер нь Интернэтэд файлуудыг нийтлэх, та ADSL чиглүүлэгч нь HTTP сервер порт хуурамч дүр тохируулах хэрэгтэй. UPnP протокол байхгүй байна Интернэтэд зөвхөн HTTP. анхдагч портын дугаарыг 8192 (та тохиргоог өөрчилж болно), мөн олон нийтийн сүлжээний хувьд хаягийн порт, өгсөн байх ёстой экспортын нь серверийн Wifi IP хаяг холбоотой ADSL чиглүүлэгч дээр. тохиргооны анхдагч гадаад портын дугаар 0 байна, гэхдээ та тохируулж болно та нар юу 8192 эсвэл 80. Таны сервер рүү хандах ашиглахыг URL гэх мэт хүсэж байгаа сервер хяналтын цонхны баруун дээд талд өгсөн байна.

Интернетээр дамжуулан HTTPS ашиглах

Миний вэб сервер олон жилийн турш өөрөө гарын үсэг зурсан гэрчилгээтэй HTTPS-г дэмждэг байсан ч энэ нь ажиллаж байгаа ч асуудал болон алдааны мессежийг өгдөг. Тийм ч учраас би стандарт X509 гэрчилгээг авч, хадгалахын тулд Автомат гэрчилгээний менежментийн орчин_ (ACME) протоколыг хэрэгжүүлэхээр шийдсэн.

ACME протокол нь техникийн зарим шаардлага тавьдаг тул хүн бүр ашиглах боломжгүй. Энэ протоколыг ашиглахын тулд танд гадаад IP хаяг дээрээ тогтмол DNS нэр хэрэгтэй. X509 гэрчилгээг IP хаяг дээр биш зөвхөн DNS нэр дээр тохируулах ёстой.

Let's Encrypt-ээс гэрчилгээ авахын тулд та энэ гадаад DNS нэр дээр стандарт портын дугаар (80) бүхий HTTP сервер ашиглах шаардлагатай. Миний програмын тусламжтайгаар та гэрчилгээг зөвхөн "80" гэж тохируулсан HTTP гадаад портын нэрээр ажилладаг серверээс авах боломжтой. Зөвхөн нэг сервер энэ утгыг таны гэрийн Wi-Fi сүлжээнд ашиглах боломжтой. Хэрэв та хүчинтэй гэрчилгээтэй бол "443" гэсэн HTTPS-ийн өгөгдмөл портыг зөвхөн өөрийн вэб серверүүдийнхээ аль нэгэнд нь "алиа порт" болгон ашиглаж болно. Гэхдээ та төхөөрөмжөө "үндэс" болгохгүйн тулд 1024-ээс дээш портуудыг HTTP-д 8080, HTTPS-д 8443-ыг жишээ болгон "локал" портын дугаар болгон ашиглах хэрэгтэй.

"Тохиргоо" самбарыг HTTP болон HTTPS протоколуудын аль алиных нь портын нэрсийг дэмжихээр өөрчилсөн бөгөөд үүнээс гадна та өөрийн гадаад IP хаягдаа DNS нэрийг өгч болно. Энэ нэр нь X509 гэрчилгээнд таны сүлжээний үйлчилгээ үзүүлэгчийн нэрээс гадна тодорхойлогдох болно. Сертификат нь ижил Wi-Fi сүлжээнд ажилладаг бусад экспортын серверүүдэд автоматаар түгээгдэж, HTTPS-г интернетээр ашиглахыг зөвшөөрч, харин бусад портын бусад утгуудтай.