23 Sep

Reindirizzamento 301 con .htaccess con e senza www per evitare contenuto duplicato.

Molto spesso si notano siti che vengono indicizzati con il dominio di terzo livello www e senza. Per esempio la pagina:

www.miodominioxxx.it e la pagina miodominioxxx.it possono essere identiche e cosi via per tutto il sito. Per evitare questo motivo possiamo aggiungere al file .htaccess (solo su Apache) delle regole in maniera che possiamo rimuovere o aggiungere l’url a tutti gli url del nostro sito ed evitare duplicati nelle pagine. Di seguito gli esempi:

Esempio 1 – Redirect da dominiomioxxx.it a www.dominiomioxxx.it

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.dominiomioxxx.it$ [NC]
RewriteRule ^(.*)$ http://www.dominiomioxxx.it/$1 [L,R=301]

Esempio 2 – Redirect da www.dominiomioxxx.it a dominiomioxxx.it

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^dominiomioxxx.it$ [NC]
RewriteRule ^(.*)$ http://dominiomioxxx.it/$1 [L,R=301]

Ricordate che il mod_rewrite dovrà esserere abilitao e una volta cambiato .htaccess fate alcuni test per vedere se tutto funziona.

10 Jul

Nuovo magazine per il Mondo Apple

Ancora una volta vorrei segnalarvi un un nuovo sito con cui ho collabororato attivamente I-Apple.it, un magazine online completamente dedicato al mondo Apple. Recensioni, news e tante altre cose che riguardano la casa della mela.

Io mi sono occupato principalmente del Design (Commenti positivi e negativi ben accetti!) e di mettere in contatto gli editori.

Date un occhiata a I-Apple.it e fateci sapere cosa ne pensate commentando! 😉

13 Mar

Comprimere Cartella con Linux e Tar

I comandi di linux sono spesso più semplici di quanto uno possa pensare. Oggi avevo bisogno di comprimere il contenuto di una cartella del mio web-server linux e transferirla su una altro server.

Il comando per comprimere usando Tar, gunzip comprime i file!, è il seguente:

tar -zcvf archivio-directory-compressa.tar.gz /home/percorso/cartella_da_comprimere

Eseguendo questo comando vi ritoverete il file archivio-directory-compressa.tar.gz nella directory da dove eseguite il comando e nessun file verra cancellato.

Per decomprimere il tutto con la stessa struttura della cartella, e proprierà dei files:

tar -zxvf archivio-directory-compressa.tar.gz

E verranno decompressi i file.

Se avete problemi, commentate 🙂

02 Mar

Lista province, regioni e codici in .Csv (o .Txt)

Sono alcuni anni che programmo e ho creato l’elenco delle province con i relativi codici e regioni decine di volte!

E ogni volta che li cerco online, niente da fare! Cosi ho deciso di mettere la lista online sul mio blog, almeno li non li perdo. 😉

Ho creato due file .csv (.txt) :

Le province dovrebbero essere tutte quelle italiane…se manca qualcosa commentate.

Buon lavoro!

13 Feb

Query per trovare o rimuovere record duplicati in una tabella MySql

Bè, come tutti i webmaster e programmatori quando creo un’applicazione spesso non considero il fatto che in un database (uso sempre MySql), spesso vengoni inseriti dati duplicati che hanno poca utilità. Per questo motivo spesso decidiamo di rimuoverli o analizzarli.

Qui di seguito troverete un paio di query (testate su MySql 5) che vi aiuteranno a risolvere (spero) i vostri problemi:

  1. Query per elencare i duplicati:

    SELECT Termine,count(*) as n FROM mia_tabella group by Termine having  n > 1

    Questa query vi restituira l’elenco dei termini duplicati.

  2. Query per rimuovere i duplicati.
    Bè prima di tutto fate un backup dei dati, una volta che i record sono andati….! 😀

    CREATE TABLE nuova_tabella as SELECT * FROM vecchia_tabella WHERE 1 GROUP BY Termine;

    Questa query creerà una nuova tabella e copierà i dati non duplicati per la chiave “Termine”.
    Quello che vi resta da fare è rimuovere la vecchia tabella e rinominare la nuova senza duplicati.

Se avete qualche domanda potete commentare…

17 Dec

Esempio con Fulltext Search con Mysql

Sto sviluppando una piccola applicazione web e ho avuto bisogno di utilizzare una ricerca libera nel Database Mysql . Ho provato varie funzioni (tipo Like e Rlike) ma non hanno generato i risultati in termini di performance che mi aspettavo.

Per questo motivo ho deciso di utilizzare la funzione FULLTEXT search di MySql. Dopo mille ricerche online sono riuscito finalmente a capire come fare.

Prima di tutto bisogna creare un indice sulla vostra tabella MySql (Ricorda che non funziona su Innodb).

L’indice si crea semplicemente cosi:

CREATE FULLTEXT INDEX IndiceRicerca ON lamia_tabella (ColonnnaUno(45),ColonnnaDue(65));

per effettuare la ricerca sulle colonne:

SELECT * FROM lamia_tabella WHERE MATCH (ColonnnaUno,ColonnnaDue) AGAINST (‘TermineDiRicerca’);

Ricordatatevi che le colonne devono essere Text o Varchar e che devono avere una lunghezza limitata (Ecco perchè ho usato ColonnnaUno(45)) altrimenti non funziona!

Se avete problemi commentate! 🙂