OS 64, accesso a 32 bit
Avete impostato ODBC su un sistema Widnows a 64 bit. Ma la connessioen non avviene... Bsogna ricordare che una versione a 64 bit di un sistema operativo Microsoft Windows include 2 versioni dello strumento di amministrazine di origine dati Microsoft Open Database Connectivity (ODBC) (Odbcad32.exe):
- versione a 32 bit del file Odbcad32.exe si trova nella cartella %systemdrive%\Windows\SysWoW64.
- versione a 64 bit del file Odbcad32.exe si trova nella cartella %systemdrive%\Windows\System32.
PHP.ini memoria insufficiente
Può capitare che, una volta avviata un'applicazione PHP in IIS, si presenti un errore di questo tipo:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 14848 bytes) in C:\Inetpub\xxxxx on line xxxx.
E' necessario controllare i parametri del php.ini, nello specifico: memory_limit. Portando il valore a 256 o 512 MB e riavviando IIS il problema dovrebbe rientrare. Nel caso non fosse cos, è meglio controllare la varia opzioni presenti in phpinfo().
Nuovo PHP 5.3.0
La nuova versione di PHP è stata rilasciata. La versione 5.3.x è quindi disponibile per il download qui. Tuttavia, a fronte di alcuni vantaggi, ci sono alcune incompatibilità. Valutare bene prima di procedere all'upgrade.
Redirect www
Un sito web deve avere o meno il prefisso www davanti? in realtà è una scelta, ma il fatto i utilizzarlo semplifica la configurazione dei DNS. Per ridirezionare i visitatori da un dominio senza www a uno con il prefisso, basta utilizzare ISAPI rewirte. Per esempio, immaginiamo di dover ridirezionare http://onen.it su http://www.onen.it senza generare errori.
Il più famoso e utile tool per IIS è ISAPI Rewrite 3 di Helicontech, scaricabile qui. Una volta scaricato e installato basta scrivere:
RewriteEngine on
RewriteCond %{HTTPS} (on)?
RewriteCond %{HTTP:Host} ^(?!www\.)(.+)$ [NC]
RewriteCond %{REQUEST_URI} (.+)
RewriteRule .? http(?%1s)://www.%2%3 [R=301,L]
Perchè il copdice scritto venga eseguito, è necessario aver impostato il corretto DNS, con un record A, sia per il domini con il prefisso www, sia per il doinio senza prefisso. Se su IIS sono presenti più siti in hosting, è necessario aver inserito l'appropriato host header name.
Creare un proprio certificato SSL
Per realizzare una connessione sicura del proprio sito web, è necessario disporre di un certificato. Si può acquistarlo da società come Verisign ma si può anche crearlo in autonomia per essere utilizzato con IIS 6-7. Un certificato provvede quindi alla crittografia della trasmissione e provvede così alla sicurezza. Tecnicamente un certificato autoprodotto o uno acquisato da un ente terzo sono uguali, ma nelle transazioni web l'ente terzo si fa carico e garantisce la sicurezza del messaggio crittografato.
Creazione
Con IIS 6 si può generare la richiesta di certificato e utilizzare un'authority per la sua gestione. Questo può essere realizzato con il servizio Autorità di certificazione. Con IIS 7, invece, non si può usare lo stesso servizio senza aver installato le Active Directory. Utilizzeremo SelfSSL e SSLDiag da linea di comando (è necessario disporre della compatibilità metabse su IIS7 perchè il tool funzioni).
SelfSSL è incluso in Internet Information Services (IIS) 6.0 Resource Kit Tools, scaricabile qui. Da linea di comando scrivere:
SelfSSL.exe /N:CN=www.onen.it /V:365 /S:2
Il comando crea un certificato per il dominio chiamato www.onen.it (/N - nome), per un periodo di validità di 365 giorni (/V - validità) e sarà inserito in IIS con id = 557425147 (/S switch). Assicurarsi che il nome scelto corrisponda esattamente al sito (FQDN) utilizato. Il parametro /V identifica la validità che di default è 7 giorni; il parametro /S identifica l'identificativo del sito utilizzato, rintracciabile in IIS Manager. C'è un limite documentato di SelfSSL, ossia che permette solo ad un sito di avere un certificato nello stesso tempo. L'alternativa è SSLDiag.
SSLDiag è incluso nel pacchetto di diagnostica di Microsoft scaricaile qui. SSLDiag non ha il baco sopra descritto. La sintassi è:
SSLDiag.exe /s:557425147 /selfssl /n:CN=www.onen.it /v:365
Simile a SelfSSL con l'eccezzione del parametro /selfssl che istruisce SSLDiag a firmare il certificato prodotto.
L'unico svantaggio di SSLDiag rispetto a SelfSSL è con IIS 7 non crea il binding https come SelfSSL.