blog di Uccio

How-To installare Solr su Ubuntu 14.04

Apache Lucene Solr

Questo How-To illustra il processo di installazione di Solr su Ubuntu server 14.04 LTS partendo dal pacchetto scaricabile direttamente dal sito del progetto (http://lucene.apache.org/solr), questa metodologia di installazione è più lunga di quella tramite pacchetti ma consente di installare un Solr in versione aggiornata contrariamente a quella resa disponibile per mezzo dei pacchetti.

OVH ed i record DNS DynHost

Sempre più spesso siamo costretti a dover accedere a macchine/server che non dispongono di IP fissi e l'unica soluzione "ben fatta" è avere un qualche record a DNS dinamico che insegue l'effettivo indirizzo IP della nostra macchina.

Per tutti quelli che hanno la possibilità di gestirsi i DNS di OVH tra le cose simpatiche messe loro a disposizione dal provider Francese c'è sicuramente la possibilità di avere nomi a dominio che dinamicamente possono venir aggiornati con l'IP attualmente in uso.
Per chi è pratico questi speciali record DNS vengono in gergo chiamati DynHost

Drupal Services 3 - XML-RPC Session Autentication con Zend Framework

Questo piccolo esempio cerca di riassumere cosa deve fare un client XML-RPC per sfruttare le risorse esposte da un server XML-RPC creato con Services 3.x .
Il server in questione richiede l'autenticazione della sessione come metodo di accesso, pertanto il client dovrà effettuare un login con un utente di Drupal e poi sfruttare la sessione autenticata per utilizzare le risorse.
Il client per semplicità è stato creato utilizzando Zend Framework.

Url Rewrite

Apache mod_rewrite

Qualche tempo fa qui abbiamo visto come lavorando sugli .htaccess del nostro sito possiamo istruire Apache a redirigere l'utente su un particolare percorso/sito ma vi è un'alternativa interessante: istruire apache a fare url rewriting direttamente nella configurazione del vhost.

Upload progress

La libreria UploadProgress è una simpatica libreria che consente all'utente finale di poter visualizzare lo stato di caricamento (upload) di file verso il server.
La libreria è consiglaita per i server che ospitano installazioni di drupal (ma non solo) e di fatto il nostro CMS preferito ci ricorda di intallarla.

Per installarla ci sono 2 strade alternavive che come sempre sono da pacchetti (non è un vero pacchetto) e da sorgenti

Metodo A Consigliato (PECL)


apt-get install make
apt-get install php5-dev
apt-get install php-pear
pecl install uploadprogress

Netbeans: Drupal Coding Standards - lo stile non è acqua!

Netbeans

Al giorno d'oggi lo sviluppatore non ha più semplici editor di testo ma ben più complessi ecosistemi che lo aiutano a scrivere codice, ed è innegabile che alcune funzionalità siano estremamente comode.
Chi scrive codice per Drupal sa che gli sviluppatori di DO (drupal.org) sono molto attenti a come il codice è scritto; e già solo la sua formattazione è soggetta a numerose regole (http://drupal.org/coding-standards/) da rispettare.

Aggiungere o rimuovere il "WWW" dall' url di un sito

Apache mod_rewrite

Da un punto di vista del SEO è importante che il nostro sito non duplichi i contenti presentando la stessa pagine con e senza il www nell'indirizzo URL.
La maniera migliore per evitare che un sito sia duplicato è scegliere una politica dell'indirizzo (vogliamo/non vogliamo il www) e forzare Apache a redirigere permanentemente i contenuti sull'unica versione del sito.

Mysql Kill User: come uccidere tutti i thread di un utente

Chi usa GUI come "Mysql Administrator" sicuramente ha apprezzato il bottone "kill user" ma improvisamente in "Mysql Workbench" la funzionalità è stata rimossa ed allora bisogna inventarsi qualcos'altro!

La cosa più comoda è sicuramente una procedura fatta ad HOC per non doverci ricordare quasi nulla!



DELIMITER $$

DROP PROCEDURE IF EXISTS `mysql`.`kill_user`$$
CREATE PROCEDURE `mysql`.`kill_user` (kill_user_name VARCHAR(16) CHARSET utf8)
SQL SECURITY INVOKER
BEGIN
DECLARE query_id INT;
DECLARE iteration_complete INT DEFAULT 0;
DECLARE query_cursore CURSOR FOR SELECT id FROM INFORMATION_SCHEMA.PROCESSLIST WHERE user=kill_user_name;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET iteration_complete=1;

OPEN query_cursore;
cursor_loop: LOOP
FETCH query_cursore INTO query_id;
IF iteration_complete THEN
LEAVE cursor_loop;
END IF;
KILL query_id;
END LOOP;
CLOSE query_cursore;

END$$

DELIMITER ;

Dries parla di Drupal 8

Drupal8.JPG

Che figo!

Disabilitare i vincoli di integrità (Foreign Key) su mysql

I vincoli di integrità referenziale (Foreign Key) sono certamente una bella cosa ma puo capitare nella vita di tutti i giorni che ci impediscano di effettuare operazioni di update o drop per noi importanti.
Di default questi vincoli vengono controllati ma è possibile temporaneamente disabilitarli con la seguente sintassi:

SET FOREIGN_KEY_CHECKS = 0;

....le query che

SET FOREIGN_KEY_CHECKS = 1;

Condividi contenuti