PHP

Siti Drupal e Proxy: come ottenere l'IP dei visitatori

In PHP è possibile ottenere l'IP del visitatore usando la variabile $_SERVER['REMOTE_ADDR'], però, nel caso in cui tra il client ed il web server ci sia un reverse proxy o un load balancer, questa variabile conterrà l'IP del proxy.

Quindi in questa situazione, come si può ricavare il vero IP del client?

Solitamente i proxy comunicano al server una informazione aggiuntiva nell'header della richiesta con l'intestazione X-Forwarded-For che contiene l'IP reale del client.

Siti Drupal e Proxy: come ottenere l'IP dei visitatori

Svuotare tutte le cache di Drupal da riga di comando

Per svuotare la cache di Drupal esistono molti modi. Si possono svuotare le tabelle cache attraverso l'interfaccia utente, oppure con lo script Drush, oppure con uno script PHP personalizzato che richiama la funzione drupal_flush_all_caches().

Un altro modo è quello di svuotare manualmente le tabelle dal database. I metodi classici non sempre prevedono l'eliminazione di tutti i contenuti di tutte le tabelle cache (vedi ad esempio la tabella cache_form).

Svuotare tutte le cache di Drupal da riga di comando

Script PHP per generare redirect 301 di htaccess

Quando si aggiorna un sito web può essere necessario mappare gli indirizzi del vecchi sito con quelli del nuovo sito. Il sistema più usato, ed il più corretto, è quello di creare i redirect di tipo 301: ovvero configurare il web server in maniera tale che gli utenti siano reindirizzati verso le nuove pagine.

Script PHP per generare redirect 301 di htaccess

Script PHP per salvare una variabile su FTP

La procedura per copiare un file attraverso il protocollo FTP utilizzando il linguaggio PHP è piuttosto semplice e ben documentata. Per prima cosa si apre una connessione con il server FTP e si effettua il login, poi si entra nella directory di destinazione ed infine si copia un file con la funzione ftp_put() che accetta come parametro di origine il percorso di un file locale.

Script PHP per salvare una variabile su FTP

Gestione permessi granulari per modulo Metatag

Il modulo Metatag per Drupal 7 è una delle soluzioni più valide per la gestione dei meta tag in un sito Drupal. Nella ottimizzazione di un sito per i motori di ricerca è fondamentale gestire queste informazioni e attraverso un semplice trucco è possibile specificare quali meta tag possono essere modificati dai vari utenti di un sito Drupal.

Gestione permessi granulari per modulo Metatag

Drupal e gli Shortcode personalizzati

A differenza di WordPress, il CMS Drupal non ha a disposizione un sistema di shortcodes consolidato e ricco di elementi.

È da poco tempo infatti che è disponibile un modulo per Drupal 7 che introduce il supporto agli shortcodes, che però offre un numero decisamente limitato di possibilità.

Drupal e gli Shortcode personalizzati