Apache a soubory ve formátu MHT

jejda

Apache a soubory ve formátu MHT
« kdy: 17. 03. 2018, 06:35:41 »
Ahojte, mám několik dokumentů uložených jako .mht. Do httpd.conf sem přidal řádek:
AddType message/rfc822 .mhtml .mht
Potřebuju aby se to v prohlížeči zobrazovalo přímo jako dokument. Problém je, že co prohlížeč to jinačí chování

vivaldi:
file:///srv/http/test1.mht      zobrazí dokument
http://localhost/test1.mht      nabízí uložení souboru

firefox:
file:///srv/http/test1.mht      nabízí uložení a říká že soubor je "MHTML web archive"
http://localhost/test1.mht      nabízí uložení a říká že soubor je "email message"  :o

elinks:
file:///srv/http/test1.mht      nabízí uložení a říká že soubor je "application/octet-stream" a zobrazí zdroják
http://localhost/test1.mht      nabízí uložení a říká že soubor je "message/rfc822" a zobrazí zdroják

netsurf:
file:///srv/http/test1.mht      zobrazí zdroják
http://localhost/test1.mht      nabízí uložení

otter-browser:
file:///srv/http/test1.mht      zobrazí dokument
http://localhost/test1.mht      nabízí uložení

w3m:
file:///srv/http/test1.mht      zobrazí zdroják
http://localhost/test1.mht      zobrazí zdroják

opera 12:
file:///srv/http/test1.mht      zobrazí dokument
http://localhost/test1.mht      zobrazí dokument

po síti IE11 win10             zobrazí dokument
po síti microsoft edge win10   nabídne uložení do souboru, když zakliknu "open" tak to stáhne do cache a zavolá IE11 který to zobrazí správně jako lokálně uložený dokument  ;D

Kdo se chová podle mých představ je akorát opera12 a IE11. Bez keců zobrazí dokument, jedno jestli přímo z disku nebo jestli ho servíruje apache. Nevím jestli mám nějak blbě nastavený apache nebo jestli je chyba v ostatních browserech nebo jestli není nějak poškozený ten mht. Netuším jak sem přidat přílohu, takže https://ptpb.pw/LO0u . Když dám z httpd.conf pryč to "AddType message/rfc822 .mhtml .mht" tak ani opera12 nezobrazí dokument ale jenom zdroják. Nastavovat nějak asociace pro každý browser zvlášť mi přijde jako pitomost. Prohlížečů sou mraky, navíc s každou verzí se ta funkčnost mění, to se nedá uhlídat. Že mht nezvládne otevřít třeba w3m tak serepes ale u moderních gui browserů jak je vivaldi nebo firefox bych docela čekal že to dají. Chtěl bych nastavit apache tak, aby VŠEM prohlížečům bylo jasný co mají s tím souborem dělat.
« Poslední změna: 18. 03. 2018, 19:05:24 od Petr Krčmář »


Kkt1

Re:apache a mht
« Odpověď #1 kdy: 17. 03. 2018, 07:22:32 »
Obecne pokud das do mod_mime sekce sve konfigurace addtype tak by to melo fungovat. Neco jako:

<IfModule mod_mime.c>
AddType text/html .mhtml .mht .maff .maf
AddType message/rfc822 .mhtml .mht
AddType multipart/related .mhtml .mht .maff .maf
</IfModule>

xul

Re:apache a mht
« Odpověď #2 kdy: 17. 03. 2018, 08:21:22 »
Mht...ctes roumenovo maso v patek jo :)

jejda

Re:apache a mht
« Odpověď #3 kdy: 17. 03. 2018, 09:12:18 »
Tak jsem tam přidal ještě ty další dva řádky, celý to teď vypadá takto
<IfModule mime_module>
    TypesConfig conf/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType message/rfc822 .mhtml .mht
    AddType text/html .mhtml .mht .maff .maf
    AddType multipart/related .mhtml .mht .maff .maf
</IfModule>

Chová se to ale stejně jak předtím.  :-\ opera12 a IE11 zobrazí ten mht přímo ale ostatní prohlížeče zobrazujou výzvu na uložení nebo otevření v nějakým externím programu anebo jenom ukážou ten soubor jako plaintext zdroják. Ta sekce s mime_module se ale očividně zpracovává protože když zaremuju ten řádek s message/rfc822 tak začne opera nabízet uložení místo aby ten dokument zobrazila.

karlik

Re:apache a mht
« Odpověď #4 kdy: 17. 03. 2018, 21:04:45 »
Nechápu, co má společného webový server s mht.
Opera 12 *.mht zobrazí, protože jej používala jako nativní pro ukládání.
Ostatní webové prohlížeče *.mht zobrazí nebo nezobrazí podle toho, jestli mají podporu zobrazení pro tento formát.
Starý Firefox podporoval *.mht s doplňkem unmht, nový Firefox už tento doplněk nepodporuje.
Bohužel, sám mám hodně *.mht souborů.
Zatím mi funguje Chromium s doplňkem "Save As MHT".


JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:apache a mht
« Odpověď #5 kdy: 17. 03. 2018, 21:47:00 »

mhi_

Re:apache a mht
« Odpověď #6 kdy: 17. 03. 2018, 22:35:30 »
Navrh reseni: Bude to nutne nejspis naprogramovat, ale udelal bych treba PHP skript, ktery by umel naservirovat soucast .mht (a pres mod_rewrite volal to PHP na vsechny .mht). PHP kod ktery parsuje MHT existuje, jestli funguje jak je vyse uvedeno, nevim.

Driv jsem takhle resil nejaky jiny format, ktery v sobe embeddoval dalsi soubory a fungovalo to dobre.

jejda

Re:apache a mht
« Odpověď #7 kdy: 18. 03. 2018, 01:09:42 »
Pozoruju že jsem doteď žil docela v bludu že mht je nejaký běžně rozšířený formát se kterým si musí poradit každý software který umí číst html. Nejjednodušší bude asi zkusit nějak vypreparovat z těch mht archívů data a uložit je jako normální html. Obrázky do podadresářů atd. Apache s tím nejspíš neudělá nic. A pro příště se mht rači obloukem vyhnout.
Původní plán byl takový, že si pomocí apache budu moct na lokální síti prohlížet vybrané stránky offline. Přišlo mi že uložit všecek ten dynamicky generovaný brajgl do jednoho statickýho archivu by mohlo být řešení. Ideální by byla nějaká offline proxy která by si uměla indexovat cache, dalo by se vyhledávat, filtrovat reklamy atp. Docela se tomu přibližuje addon scrapbook napojený na apache. Zkouším si tím teď hrát a zatím to vypadá docela použitelně. :)
Takže asi vyřešeno.