sâmbătă, 21 februarie, 2009 | Autor:

Relativ noi tipuri de documente Birou 2007 a dat unele probleme gazde web atunci când clienții lor doresc să ofere documente pentru descărcare. Cel mai adesea, documentele sunt oferite de către serverul web ca “text / html” care este apoi redat ca o tona de gunoi pe ecranul utilizatorului web.

Cel mai bun mod de a rezolva acest lucru este de a adăuga toate MIMA tipuri de configurare principal al serverului. IIS7 pentru Windows are deja aceste tipuri MIME configurat corect, în mod implicit. IIS6 și IIS5 necesită tipurile MIME pentru a fi adăugate, după cum s-ar putea Apache pe instalațiile mai vechi. pentru Apache, De asemenea, există o soluție pentru proprietarul domeniului individuale pentru a adăuga tipurile MIME, prin intermediul lui Apache .htaccess fișier.

IIS 6 Tipul MIME plus (pentru administratorul serverului)

Înainte de acest lucru se poate face, asigură că serverul este, de asemenea, setat pentru a permite editarea metabaza directă:

  1. Sarcină IIS manager de: Start -> RONU, “inetmgr” -> [O.K]
  2. Dați clic dreapta pe “Server” și faceți clic “Properties”
  3. În cadrul “Internet Information Services” fila (de obicei, singura fila), să se asigure că “Encapabil Direct metabazei Editare” bifat caseta de selectare.
  4. Clic [O.K]

Asigurați-vă că back-up de configurare IIS (aici pentru IIS5) dinainte. Nu va lua nici o responsabilitate pentru un administrator de rupere serverul lui. Am motive să cred asta Mai De asemenea, lucra la IIS5 cu toate acestea am la fel de mult motive să credem că ar putea da doar o mulțime de erori. În cazul în care un IIS5 / ferestre 2000 admin este dispus să testeze acest lucru pentru mine după copierea de rezervă configurația vă rog să-mi cunosc rezultatele.

Copiați următorul text într-un fișier numit msoff07-addmime.vbs și executați-l o singura data din commandline prin tastarea CScript msoff07-addmime.vbs și apăsând pe Enter. Dacă executați mai mult decât o dată, tipurile MIME vor fi adăugate de fiecare dată și veți avea mai multe intrări identice:

"Acest script adaugă Oficiul necesar 2007 tipuri MIME la un IIS 6 Server.
"Pentru a folosi acest script, doar dublu-clic sau executa dintr-o linie de comandă.
"Rularea acest script de mai multe ori rezultate în mai multe intrări în
"IIS MimeMap astfel încât să nu ar trebui să ruleze mai mult de o dată.
"Modificat de la adresa http://msdn.microsoft.com/en-us/library/ms752346.aspx
 
întunecos MimeMapObj, MimeMapArray, MimeTypesToAddArray, WshShell, oExec
const ADS_PROPERTY_UPDATE = 2 
 
"Setarea tipurilor MIME pentru a fi adăugate
MimeTypesToAddArray = mulțime(".docm", "application/vnd.ms-word.document.macroEnabled.12", _
".docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", _
".dotm", "application/vnd.ms-word.template.macroEnabled.12", _
".dotx", "application/vnd.openxmlformats-officedocument.wordprocessingml.template", _
".potm", "application/vnd.ms-powerpoint.template.macroEnabled.12", _
".potx", "application/vnd.openxmlformats-officedocument.presentationml.template", _
".ppam", "application/vnd.ms-powerpoint.addin.macroEnabled.12", _
".ppsm", "application/vnd.ms-powerpoint.slideshow.macroEnabled.12", _
".ppsx", "application/vnd.openxmlformats-officedocument.presentationml.slideshow", _
".pptm", "application/vnd.ms-powerpoint.presentation.macroEnabled.12", _
".pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation", _
".sldm", "application/vnd.ms-powerpoint.slide.macroEnabled.12", _
".sldx", "application/vnd.openxmlformats-officedocument.presentationml.slide", _
".xlam", "application/vnd.ms-excel.addin.macroEnabled.12", _
".xlsb", "application/vnd.ms-excel.sheet.binary.macroEnabled.12", _
".xlsm", "application/vnd.ms-excel.sheet.macroEnabled.12", _
".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", _
".xltm", "application/vnd.ms-excel.template.macroEnabled.12", _
".xltx", "application/vnd.openxmlformats-officedocument.spreadsheetml.template") 
 
"Obține obiectul mimemap
A stabilit MimeMapObj = GetObject("IIS://Localhost / MimeMap")
 
"Call AddMimeType pentru fiecare pereche de extensie / tip MIME
Pentru tejghea = 0 pentru UBound(MimeTypesToAddArray) Pas 2
    AddMimeType MimeTypesToAddArray(tejghea), MimeTypesToAddArray(tejghea+1)
Următor →
 
"Crearea unui obiect Shell
A stabilit WshShell = CREATEOBJECT("WScript.Shell")
 
"Oprește-te și porni serviciul IIS
A stabilit oExec = WshShell.Exec("net stop w3svc")
Do In timp ce oExec.stare = 0
    WScript.Dormi 100
Buclă
 
A stabilit oExec = WshShell.Exec("net start w3svc")
Do In timp ce oExec.stare = 0
    WScript.Dormi 100
Buclă
 
A stabilit oExec = Nimic
 
"Raport de stare pentru utilizator
WScript.Ecou "Microsoft Office 2007 Tipurile de documente MIME au fost înregistrate."
 
"AddMimeType Sub
Sub AddMimeType (Ext, mTYPE)
 
    "Ia mapări de proprietate MimeMap.
    MimeMapArray = MimeMapObj.GetEx("MimeMap") 
 
    "Adăugați o mapare nouă.
    eu = UBound(MimeMapArray) + 1
    Redim Păstrați MimeMapArray(eu)
    A stabilit MimeMapArray(eu) = CREATEOBJECT("MimeMap")
    MimeMapArray(eu).Extensie = Ext
    MimeMapArray(eu).Mime = mTYPE
    MimeMapObj.PutEx ADS_PROPERTY_UPDATE, "MimeMap", MimeMapArray
    MimeMapObj.setinfo
 
Sfârşit Sub

Tipul MIME Apache plus (pentru administratorul serverului)

Apache stochează sale tipuri MIME într-un fișier localizat în mod normal, la $installpath / conf / mime.types. Vezi mod_mime documentație pentru mai multe despre modul în care funcționează. Arch Linux instalează sale tipuri MIME /etc / httpd / conf / mime.types și Parallels Plesk instalează-l în /usr / / / admin / PSA conf / mime.types locale. Distribuția dumneavoastră ar putea avea loc într-un alt, astfel încât găsiți mime.types fișier prin rularea localizați mime.types.

Adăugați următoarele linii în fișierul dvs. mime.types:

application/vnd.ms-word.document.macroEnabled.12                          docm
application/vnd.openxmlformats-officedocument.wordprocessingml.document   docx
application/vnd.ms-word.template.macroEnabled.12                          dotm
application/vnd.openxmlformats-officedocument.wordprocessingml.template   dotx
application/vnd.ms-powerpoint.template.macroEnabled.12                    potm
application/vnd.openxmlformats-officedocument.presentationml.template     potx
application/vnd.ms-powerpoint.addin.macroEnabled.12                       ppam
application/vnd.ms-powerpoint.slideshow.macroEnabled.12                   ppsm
application/vnd.openxmlformats-officedocument.presentationml.slideshow    ppsx
application/vnd.ms-powerpoint.presentation.macroEnabled.12                pptm
application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
application/vnd.ms-powerpoint.slide.macroEnabled.12                       sldm
application/vnd.openxmlformats-officedocument.presentationml.slide        sldx
application/vnd.ms-excel.addin.macroEnabled.12                            xlam
application/vnd.ms-excel.sheet.binary.macroEnabled.12                     xlsb
application/vnd.ms-excel.sheet.macroEnabled.12                            xlsm
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet         xlsx
application/vnd.ms-excel.template.macroEnabled.12                         xltm
application/vnd.openxmlformats-officedocument.spreadsheetml.template      xltx

Tipul MIME Apache plus (Pentru proprietarul domeniului cu cel puțin FTP acces – folosind fișierul .htaccess)

Adăugați textul următor pentru a domeniului dvs. .htaccess fișier, cel mai frecvent într-un httpdocs / director

AddType aplicatii / vnd.ms-word.document.macroEnabled.12 docm
AddType application / vnd.openxmlformats-officedocument.wordprocessingml.document docx
AddType application / vnd.ms-word.template.macroEnabled.12 dotm
AddType aplicatii / vnd.openxmlformats-officedocument.wordprocessingml.template dotx
AddType aplicatii / vnd.ms-powerpoint.template.macroEnabled.12 potm
AddType aplicatii / vnd.openxmlformats-officedocument.presentationml.template potx
AddType aplicatii / vnd.ms-powerpoint.addin.macroEnabled.12 spam-
AddType aplicatii / vnd.ms-powerpoint.slideshow.macroEnabled.12 ppsm
AddType aplicatii / vnd.openxmlformats-officedocument.presentationml.slideshow ppsx
AddType aplicatii / vnd.ms-powerpoint.presentation.macroEnabled.12 pptm
AddType application / vnd.openxmlformats-officedocument.presentationml.presentation pptx
AddType aplicatii / vnd.ms-powerpoint.slide.macroEnabled.12 sldm
AddType application / vnd.openxmlformats-officedocument.presentationml.slide sldx
AddType aplicatii / vnd.ms-excel.addin.macroEnabled.12 xlam
AddType aplicatii / vnd.ms-excel.sheet.binary.macroEnabled.12 xlsb
AddType aplicatii / vnd.ms-excel.sheet.macroEnabled.12 xlsm
AddType application / vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx
AddType aplicatii / vnd.ms-excel.template.macroEnabled.12 XLTM
AddType aplicatii / vnd.openxmlformats-officedocument.spreadsheetml.template xltx
Acțiune
Tu poți a urma orice răspunsurile la această intrare prin intermediul RSS 2.0 hrană. Aveți posibilitatea să lăsa un răspuns, sau trackback de pe site-ul tau.

9 Răspunsuri

  1. 1
    Steve 

    I think there is a typo in the vb script for IIS; the .xlt extension should be .xltm. De asemenea, two more extensions should be added:
    “.sldx”, “application/vnd.openxmlformats-officedocument.presentationml.slide”, _
    “.sldm”, “application/vnd.ms-powerpoint.slide.macroEnabled.12”, _

  2. 2
    Complicat 

    Very interesting, Steve.

    The .xlt isn’t a typo, apparently .xltm is supposed to be the macro-enabled version of .xlt. I’ll do some research and adjust appropriately.

    Thanks!

  3. 3
    Complicat 

    Ah, you’re actually correct, Steve. .xltm/x is new but .xlt is theoldOffice Excel spreadsheet template.

  4. Hi ! It worked for me. Even without changing the direct metabase edit option.

    Cheers!
    Maciej

  5. 5
    Mário Araújo 

    Thanks! 🙂

  6. 6
    R Sleegers 

    Very nicesaved me the trouble of typing them in. “Note that you must restart the World Wide Web Publishing Service or wait for the worker process to recycle for the changes to take effect.” ( http://support.microsoft.com/kb/326965 )

  7. 7
    Complicat 

    I’m not sure a recycle is necessary if you’veensure[d] that your server is also set to allow direct metabase editing”, per the article.

  1. […] Source: http://dogma.swiftspirit.co.za/archives/183 […]

  2. […] The original article where the script was found is here. […]

Lasă un răspuns » Autentificare