Server web
Drupal 8 funziona su qualsiasi server web con una versione di PHP che soddisfa i requisiti di versione PHP.
Molti provider di hosting offrono diverse versioni di PHP. La versione PHP predefinita potrebbe essere inferiore a quella richiesta da Drupal, quindi controlla la versione attuale nel pannello di controllo del tuo host e aggiorna all’ultima versione supportata (se necessario).
PHP rilascia periodicamente aggiornamenti di sicurezza: tieniti informato su php.net e aggiorna o correggi i tuoi server quando necessario, oppure collabora con un provider di hosting che gestisce autonomamente gli aggiornamenti PHP.
Se desideri creare e sviluppare siti Drupal sul tuo computer, puoi installare tutto ciò che serve localmente.
Nota sulla sicurezza: alcune funzionalità di sicurezza sono fornite solo da Apache e, in misura minore, da IIS tramite i file .htaccess e web.config. È tua responsabilità ricreare tali funzioni quando non si utilizza Apache.
Permessi su file e cartelle
Drupal e PHP devono avere permessi di lettura e scrittura sulla directory /sites/default/files. Quest’area viene utilizzata per memorizzare file in cache (CSS e JavaScript compressi) e tutti i file caricati tramite l’interfaccia di Drupal.
Nota sulla sicurezza: un permesso universale come 0777 non è sicuro e il suo utilizzo è sconsigliato.
Apache
Apache è il server web più comunemente utilizzato per Drupal. Drupal funziona su Apache 2.x, ospitato su UNIX / Linux, OS X o Windows. Drupal 9 richiede almeno Apache 2.4.7.
La maggior parte dello sviluppo e della distribuzione di Drupal avviene su Apache, quindi c’è più esperienza e test della community su Apache che su altri server web.
È necessario il modulo Apache “mod_rewrite”. Viene utilizzato per i Clean URLs (URL puliti).
La configurazione del VirtualHost di Apache deve includere la direttiva AllowOverride All per consentire l’uso del file .htaccess di Drupal.
Se sul server Apache è abilitata di default l’opzione Options +MultiViews, la configurazione del VirtualHost deve includere anche Options -MultiViews (oppure aggiungere -MultiViews alla direttiva Options esistente).
In alcuni sistemi, specialmente nelle distribuzioni OpenSuse, potrebbe essere necessario aggiungere le impostazioni SymLink al file .htaccess. A seconda della configurazione di sicurezza, potrebbe essere necessario aggiungere +FollowSymLinks o +SymLinksIfOwnerMatch (specialmente su hosting condivisi). Se questo è richiesto, i messaggi di errore visualizzati sullo schermo potrebbero non essere utili, ma i log degli errori identificheranno correttamente il problema in entrambi i casi. Se modifichi il file .htaccess, ricorda che dovrai rifare la modifica dopo eventuali aggiornamenti che sovrascrivono il file!
Nginx
Nginx è un server web molto utilizzato, progettato per garantire un’elevata concorrenza, alte prestazioni e basso utilizzo della memoria.
Drupal funziona con versioni precedenti di Nginx (0.7.x, 0.8.x, 1.0.x, 1.2.x), versioni stabili 1.8.x e principali versioni 1.9.x, ospitate su UNIX / Linux, OS X o Windows. Nginx è una popolare alternativa ad Apache, quindi anche su Nginx esiste una significativa esperienza e test della community.
Il sito web di Nginx include un file di configurazione Drupal per Nginx che può essere utilizzato per configurare i siti Drupal.
Microsoft IIS
Microsoft IIS è un server web e un insieme di moduli di estensione delle funzionalità per l’uso con Microsoft Windows.
Il core di Drupal funziona con IIS 5, IIS 6, IIS 7, IIS 8 o IIS 10, se PHP è configurato correttamente.
Per ottenere URL puliti, potrebbe essere necessario utilizzare un prodotto di terze parti. Per IIS 7 o 8 puoi utilizzare il modulo di riscrittura URL di Microsoft o una soluzione alternativa.
Su IIS 7, Drupal richiede Windows 2008 Server SP2 o una versione successiva per supportare fastCGI.
Server web incorporato in PHP (solo per sviluppo)
Il server web integrato in PHP è incluso come strumento CLI SAPI a partire dalla versione PHP 5.4.0 e successive.
Il server web PHP è stato progettato per assistere nello sviluppo delle applicazioni. Può essere utile anche per test o per dimostrazioni in ambienti controllati. Non è destinato all’uso come server web completo, pertanto non dovrebbe essere utilizzato come server di produzione.
Questo server web può essere avviato utilizzando il comando di avvio rapido di Drupal.