Ho appena terminato di scrivere una pagina con qualche trucchetto per ottimizzare Wordpress in modo da migliorarne la velocità.
Lo trovate qui: http://www.andreapernici.com/wordpress/ottimizzare-wordpress-per-renderlo-piu-veloce/
Ho appena terminato di scrivere una pagina con qualche trucchetto per ottimizzare Wordpress in modo da migliorarne la velocità.
Lo trovate qui: http://www.andreapernici.com/wordpress/ottimizzare-wordpress-per-renderlo-piu-veloce/
Al risveglio dal dopo Convegno Gt (strepitoso quest’anno) pieno di soddisfazione per la grande riuscita e per la grande qualità degli interventi, ma con qualche piccola considerazione su uno dei migliori e più utili interventi della prima giornata. Il preparatissimo Alessandro Martin ha messo in luce alcuni fattori molto attuali, viste le novità di google, sui tempi di caricamento delle pagine web e i modi per risolverli in modo veloce e più o meno semi-automatico, consigliando anche degli ottimi strumenti disponibili in rete.
Molti dei suoi concetti sono poi stati ripresi in un intervento di Tiziano Fogliata nella seconda giornata, che più nello specifico li ha applicati all’effettivo utilizzo nell’ottimizzazione di Wordpress.
Continue Reading »
DesignerDepot 30 Jaw Dropping 3D Character Creations:http://bit.ly/1zwB98
Circa un mesetto fa ho rivisto dopo molto tempo un mio caro amico di ritorno dalla sua avventura in Uk da PHD.
Beh ! Un discreto curriculum il suo e tre anni di grossi progetti e pubblicazioni in quel di Newcastle relativi a QoS (se volete farvi un’idea di cosa si tratta visitate questo link http://www.cs.ncl.ac.uk/people/Michele.Mazzucco/publications).
Abbiamo fatto due chiacchiere, una mangiata e abbiamo parlato di presente, passato e futuro.
Ora si trasferirà a Cipro per iniziare una nuova e grande esperienza inerente a Grid Computing (http://en.wikipedia.org/wiki/Grid_computing) e più nello specifico per chiarirsi le idee c’è questo paper http://grid.ucy.ac.cy/Papers/minerSoft.ccgrid09.pdf.
Se il settore è di vostro interesse potete seguire questo sito che è sempre molto aggiornato sull’argomento:
http://www.infoq.com/articles/virtual-service-grids-intel
Intanto io mi terrò aggiornato sul suo lavoro perché mi sembra davvero interessante e colgo l’occasione per presentarvelo…è Michele Mazzucco.
Avete appena ricreato alcune pagine del vostro sito. Le vecchie hanno un buon posizionamento sui motori di ricerca e non volete perderlo. Come potete fare per inoltrare il traffico delle vecchie pagine alle nuove senza perdere il vostro posizionamento ? Potete farlo con il Redirect 301.
Che cosa è un redirect 301 ?
Il redirect 301 è il miglior metodo che abbiamo per mantenere il ranking sui motori quando reindirizziamo una pagina del nostro sito.
Il codice “301″ viene infatti interpretato come “moved permanently”. Dopo il codice infatti va poi specificata la vecchia pagina seguita da uno spazio e poi la nuovo pagina.
Per implementarlo basta aggiungere questo codice all’interno del file .htaccess (oppure direttamente nel virtualhost)
Cosa è il file .htaccess ?
Quando un visitatore/spider richiede una pagina web, il web server controlla la presenza del file .htaccess.
Il file .htaccess contiene istruzioni specifiche per alcuni tipi di richieste, incluse sicurezza, redirect e gestione errori.
Come implementare un redirect 301
redirect 301 /vecchia/vecchia.html http://www.tuodominio.com/nuovapagina.htmlNote: E’ importantissimo non aggiungere “http://www” alla prima parte dell’istruzione, ma mettere solamente il percorso a partire dal livello più alto del vostro sito.
Assicuratevi inoltre che ci sia lo spazioe tra questi due elementi:
redirect 301 (l’istruzione che indica che la pagina è spostata per sempre)
/vecchia/vecchia.html (il percorso e nome del file da spostare)
http://www.tuodominio.com/nuovapagina.html (il nuovo percorso e nome del file)
Quando gli spider dei motori di ricerca passeranno in esame il tuo sito seguiranno le regole che hai inserito nel file .htaccess.
In realtà gli spider non leggono il file .htaccess, ma riconoscono la risposta dal server come valida.
Durante il successivo aggiornamento dei motori il vecchio file verrà eliminato e rimpiazzato con il nuovo. A volte può capitare di vedere alternanze tra i file e alcune fluttuazioni che possono durare dalle 6 alle 8 settimane in riferimento alle linee guida di Google.
Altri metodi per implementare il redirect 301
redirectMatch 301 ^(.*)$ http://www.dominio.comredirectMatch permanent ^(.*)$ http://www.dominio.com
Puoi anche usare una regola delle seguenti nel .htaccess file:
redirect 301 /index.html http://www.dominio.com/index.html
redirect permanent /index.html http://www.dominio.com/index.html
redirectpermanent /index.html http://www.dominio.com/index.html
Questo farà il redirect della pagina “index.html” verso un altro dominio usando un
redirect 301-Moved permanently.
Options +FollowSymLinksRewriteEngine on
RewriteCond %{HTTP_HOST} ^miosito.com
RewriteRule ^(.*)$ http://www.miosito.com/$1 [R=permanent,L]
oppure questo:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^miosito.com$ [NC]
RewriteRule ^(.*)$ http://www.miosito.com/$1 [R=301,L]
RewriteEngine onRewriteBase /RewriteRule (.*).html$ /$1.phpAddType text/html .shtmlAddHandler server-parsed .shtml .html .htmOptions Indexes FollowSymLinks IncludesDirectoryIndex index.shtml index.html
Dato che spesso con molti Cms opensource questa caratteristica è consigliata (se non obbligatoria, anche se non esplicitamente richiesta) vi mostro in pochi passi come abilitare phpSuExec sul vostro virtualhost nel caso abbiate accesso alla Shell del vostro server Linux.
Questa piccola guida è riferita ad una Debian Linux e Apache Web Server.
ATTENZIONE – PREMESSA: Se sul server è installato php4 sostituire php4 a php5.
Individuare il file di configurazione del Virtualhost per il quale si vuole effettuare la modifica. (Solitamente si trova in /etc/apache2/sites-available/ ma ad ognuno il suo.)
Una volta trovato il file del Virtualhost che vi interessa aggiungere a quest’ultimo le seguenti direttive:
SuexecUserGroup "#1001" "#1002"
sostituendo i corretti valori di Uid e Gid (in forma numerica) con il quale si vuol fare girare gli script PHP (generalmente questi coincidono con Uid e Gid dell’utente FTP).
Nota:
Si possono ricavare gli Uid e Gid numerici di un utente di cui si conosce il nome-utente di login con il
comando:
id nome-utente
uid=1001(nome-utente) gid=1002(nome-utente) groups=1000(nome-utente), 20(dialout),24(cdrom),25(floppy),29(audio),44(video),46(plugdev)
Fine Nota
Una volta ricavato l’uid e inserita nel virtualhost la direttiva con gli id corretti, aggiungere allo stesso file le seguenti righe:
AddHandler php-script .php
Action php-script /cgi-bin/php5
e verificare che nel Virtualhost sia presente la direttiva “ScriptAlias” simile a quanto riportato sotto:
ScriptAlias /cgi-bin/ /home/sito-web/cgi-bin/
<Directory /home/sito-web/cgi-bin>
allow from all
</Directory>
Successivamente è necessario copiare dentro la directory cgi-bin del Virtualhost i file php5 ed il link simbolico php -> php5 utilizzando il seguente comando:
cp -a /usr/lib/cgi-bin/php* /home/sito-web/cgi-bin/
Impostare i permessi sui file copiati dentro la cgi-bin dell’utente in modo che l’utente ed il gruppo specificato in “SuexecUserGroup” ne siano i proprietari:
chown -R 1001:1002 /home/sito-web/cgi-bin/php*
Verificare la configurazione di Apache per assicurarsi che le modifiche effettuate siano corrette usando il comando:
apache2ctl configtest
che deve restituire “Syntax OK”
Riavviare Apache con il seguente comando:
/etc/init.d/apache2 restart
Verificare il risultato tramite questo script di test:
<?php
// Test per verificare se PHP sta girando come modulo CGI
echo "Utente con il quale sta girando lo script PHP ed il processo di Apache:";
echo "<br><br>";
echo "Risultato whoami:";
echo "<br>";
echo exec('whoami');
echo "<br><br>";
echo "Risulato id:";
echo "<br>";
echo exec('id');
echo "<br><br>";
echo "Verificare le Server API per determinare in che modalità sta girando PHP";
// Se PHP gira come CGI sarà riportato: "Server API GI/FastCGI"
// Altrimenti il risultato sarà: "Server API Apache 2.0 Handler"
echo "<br><br>";
phpinfo();
?>
e il gioco è fatto ![]()