Problemi Installazione DRUPAL 6.16 con PHP 5.3.0

Programmazione - Drupal Visite: 5646
document_DRUPAL Problemi di Installazione DRUPAL 6.16 con PHP 5.3.0
Avete avuto problemi con l'installazione di Drupal. Bene, siete nel psto giusto.
Ho scritto questi appunti perché anche io ho avuto qualche problema nell'installazione locale di DRUPAL 6.16 con PHP 5.3.0.

AGGIORNAMENTI
20/07/2010: aggiornamenti sui permessi delle cartelle drupal su linux

Per ragioni di test ho voluto installare in locale sul mio PC la versione 6.16 di CMS DRUPAL.
DRUPAL è un CMS scritto in PHP.


Come prima cosa ho installato WAMP.
WAMP è un utilissimo software che con pochi click permette di installare sotto Windows Apache Server, MySQL e PHP.
WAMP lo trovate qui.
Ricordatevi di spegnere IIS se per caso sul PC è installato ed attivo altrimenti va in conflitto Apache Server.


Fatto questo dovete scaricare DRUPAL da qui.
Quando installate WAMP, di default viene installato in c:\wamp  e in questa cartella trovate la cartella www che è la cartella dove dovete mettere i file del CMS che volete installare.
Io sotto www ho creato una nuova cartella chiamata drupal e qua dentro ho messo i file di DRUPAL.
Per installare DRUPAL la prima cosa da fare è mettere nella seguente posizione
C:\wamp\www\drupal\sites\default
il file settings.php.
Già in questa posizione trovate il file default.settings.php che è sufficiente rinominare in settings.php.
A questo punto dovete aprire il vostro database MySQL e dovete creare un database vuoto da far usare all'istanza di DRUPAL ed il relativo utente con password.
Questi dati vi serviranno durante il processo di installazione di DRUPAL.

Iniziando l'installazione di DRUPAL ho ottenuto il seguente primo errore:

Deprecated: Function ereg() is deprecated in C:\wamp\www\drupal\includes\file.inc  on line 911

Questo errore è causato dalla seguente liena di codice:
elseif ($depth >= $min_depth && ereg($mask, $file)) {

Una prima correzione trovata su internet prevedeva la seguente modifica:

elseif ($depth >= $min_depth && preg_match($mask, $file)) {

Ma con questa correzione ottenevo l'errore:

Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash in C:\wamp\www\drupal\includes\file.inc  on line 911


Alla fine la soluzione definitiva è:
elseif ($depth >= $min_depth && preg_match("/$mask/", $file)) {


 NUOVA VERSIONE
Da poco è uscita la nuova versione di Drupal, la 6.17, che tra le altre cose garantisce maggiore compatibilità con PHP 5.3.X. Chissà!


RIFERIMENTI
- Home Page di drupal qui.

Buon lavoro!