Movable Type e Windows 2003

La mia prima esperienza d'installazione di Movable Type su un server Microsoft Windows è stato un completo disastro.
Dopo aver scaricato tutti i pacchetti PERL necessari, eseguito lo script mt-check.cgi tutto era pronto ma... miracolosamente nulla funzionava!

Fortunatamente, dopo diverse ore passate a litigare con Windows 2003 server via VNC, a postare su vari forum e a dialogare con l'assistenza di Movable Type (in seguito all'acquisto di una licenza completa), sono riuscito ad installare e configurare con successo la piattaforma.
Ad essere sinceri... ne è valsa la pena!

Siccome non ero il primo e non sarò l'ultimo ad incontrare questi problemi, ecco alcuni suggerimenti.

Quale server?

Se dovete installare MT scegliete un server Unix, vi eviterete molti problemi.
Se invece dovete installarlo su un server Windows e potete scegliere tra 2000 e 2003, precipitatevi sul primo. Microsoft Windows 2003 server è indubbiamente migliore rispetto alla versione 2000, ma ha qualche problema in più a digerire MT.

Se qualcuno si stesse chiedendo su quale SO l'ho installato... tutti e tre! ;)

Errori comuni per Windows 2003 server

CGI Error - The specified CGI application misbehaved by not returning a complete set of HTTP headers.

Questo erroraccio è riuscito a farmi impazzire per oltre 3 giorni.
Il motivo alla base è la gestione dei percorsi delle librerie da parte di PERL montato su Win2k3. La situazione in sé anomala è che, per la legge di Murphy, il file mt-check.cgi vi dirà che il sistema è configurato correttamente ed è pronto per l'installazione.

Per risolvere questo errore avete due possibilità, oltre a distruggere il server o cambiare piattaforma.
In ordine di convenienza.

  1. Utilizzate la libreria perliis.dll al posto del file perl.exe come interprete del linguaggio PERL.
    Per modificare le impostazioni aprite la console di IIS, pulsante destro del mouse sul nome del web da modificare e scegliete Proprietà.
    A questo punto nella tab Home Directory selezionate il pulsante Configuration (o configurazione) per accedere al mapping delle estensioni.
    Cercate l'estensione .cgi e al posto del percorso predefinito (in genere C:\Perl\bin\perl.exe "%s" %s) selezionate la libreria perlis.dll.
  2. Cambiate il percorso della variabile di libreria da lib in PERCORSO_ASSOLUTO\lib.
    Personalmente ho provato anche questa soluzione, ma la sconsiglio.
    Alcuni riferimenti interessanti: http://www.movabletype.org/support/index.php?s=&act=ST&f=7&t=53968&st=0 e http://www.movabletype.org/support/index.php?act=ST&f=7&t=54171&hl=&s=
  3. CGI Error on IIS 6.0 (Windows 2003), articolo ufficiale tratto dalla Knowledge Base di SixApart.

'D:\Inetpub\[...]\mt.cgi' script produced no output

Questo invece è un altro bell'errore comparso, all'improvviso, dopo qualche giorno di utilizzo di Movable Type, sempre su server Windows 2003.
L'errore compariva solo ed esclusivamente quando tentavo di accedere alla pagina di modifica delle impostazioni di pubblicazione del blog, attraverso il menu Settings > Publishing.

In questa occasione l'assistenza di MT è stata rapida ed eccellente e mi ha consigliato una procedura miracolosa per correggere il problema.

1) Open the tmpl/cms/cfg_archives.tmpl file in a plain text editor (either the copy from your server or from the original download package). Save a backup copy of the file.

2) Look for the following section of code (at about line 246):

<MT_TRANS phrase="This advanced feature allows you to map any archive template to multiple archive types. For example, you may want to create two different views of your monthly archives: one in which the entries for a particular month are presented as a list, and the other representing the entries in a calendar view of that month.">

3) Remove the second sentence of text, so that the code ends up like this:

<MT_TRANS phrase="This advanced feature allows you to map any archive template to multiple archive types.">

4) Save the file and upload it back to the server in ASCII mode, replacing the copy on the server.

Spero che queste piccole pillole possano rendere l'installazione di Movable Type su Microsoft Windows 2003 server più piacevole.