Lanciare uno script ASP mediante operazione pianificata
Uno dei problemi classici che attanagliano gli sviluppatori Windows è quello di gestire l'esecuzione automatica di determinati script (ASP, ASPX, ecc.) ad orari e date prefissati.
Un esempio tipico di una simile necessità può essere quello di un ipotetico script manutenzione.asp che effettui, appunto, la manutenzione e/o il backup del database del nostro sito.
Gestire la stessa cosa su una macchina Linux sarebbe molto più semplice! Grazie al crontab ed ai browser testuali (come ad es. lynx) di cui Linux è ricco, gestire il lancio di script in determinati momenti diventa davvero facile: basterebbe aggiungere al crontab questa semplice linea per lanciare lo script alla mezzanotte di ogni giorno:
0 0 * * * lynx -dump http://www.miosito.com/manutenzione.phpPurtroppo su Windows la cosa è un po' meno intuitiva...
Nota: Questo articolo è dedicato agli amministratori di sistema. Se il vostro sito è in hosting (e quindi non avete accesso alle operazioni pianificate del server) dovete chiedere al vostro provider oppure potete semplicemente far ricorso a servizi come remote-cron.com o webbasedcron.com.
Un pizzico di VBScript per risolvere il problema...
Mediante le Scheduled Task generalmente siamo soliti lanciare qualche bel eseguibile (ad esempio l'antivirus o qualche utility di deframmentazione dei dischi)... ma come possiamo fare ad impostare l'esecuzione di uno script ASP presente sullo stesso o su altro server?
In realtà l'operazione è molto semplice. E' sufficiente, infatti, creare un piccolo script (in VBScript) avente il seguente contenuto:
' Creo l'oggetto
Dim IE
Set IE = CreateObject("InternetExplorer.Application")
' Rendo invisibile l'operazione
' (Se fosse settato su True si aprirebbe la finestra di explorer
' nel bel mezzo del nostro video)
IE.Visible = False
' Imposto la pagina web da visitare...
' ...cioè la URL dello script che voglio eseguire!
IE.navigate("http://www.miosito.com/manutenzione.asp")
' Chiudo
Set IE = Nothing
Salviamo con estensione .vbs e poi impostiamo l'operazione pianficata:
pannello di controllo > operazioni pianificate > Aggiungi operazione pianificatacliccate su Avanti e poi su Sfoglia. Selezionate il file vbs che avete creato ed impostate le vostre preferenze circa il momento in cui desiderate che l'operazione venga eseguita.
In sostanza: l'operazione pianificata lancierà (con le scadenze previste) il file vbs in quale a sua volta provvederà ad aprire un'istanza (invisibile) di IExplorer raggiungendo la URL dello script che si desidera eseguire. Semplice, no?







