Installazione
http://www.wordpress-it.it/wiki/Main/InstallazioneDettagliata
http://www.wordpress-it.it/wiki/Main/InstallazioneRapida
Configuraizone con .htaccess
Dentro i file di conf di apache
<VirtualHost *:80>
ServerName miodominio.it
DocumentRoot /www/directory
</VirtualHost>
Mentre dentro il .htaccess nella dir principale di wordpress
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Controllare questo link http://www.whiletrue.it/it/blog/wordpress/19-wordpress-un-nuovo-htaccess-per-migliori-prestazioni-e-rispetto-modslotlimit.html
Cambiare il nome del sito
Wordpress cambla gli url in tutto il db e cambiarli manualmente con un str replace crea dei problemi come suggerisce il sito
the length of the string changes but the indexes for the serialized strings does not. Consequently settings are lost and widgets disappear. Not good.
This script can now also handle multiply nested serializations, which can happen in transient values in WP at times, and it can also handle multi-byte Unicode changes safely
. Per poter trasportare per esempio un sito da un dominio locale/privato e uno pubblico si può usare questo script
http://interconnectit.com/124/search-and-replace-for-wordpress-databases/
Qui c'è un link in italiano che spiega il problema http://infoblog.miglio.it/2011/06/cambiare-lurl-di-un-sito-in-wordpress.html
Steps
- fare backup db e files
- riportare tutto dentro la destinazione definitiva
- modificare dentro il db nella tabella wp-options i parametri "site_url" e "home" mettendo l'url che si vuole ottenere. Fare commit
- se non si è accesso il web server farlo
- mettere il file php dentro la root del sito tipo /var/www/miosito/
- rinominarla per evitare problemi di accessi non autorizzati in modo diverso "mv searchreplacedb2.php mioscript.php"
- lanciare lo script chiederà i parametri conessione al db che bisogna esserci procurati precedentemente
- verificare che è tutto a posto
- cancellare lo script
Compatibilità
Ho fatto girare lo script sempre su apache, su una centos ho avuto problemi a fare funzionare lo script perchè alcuni path nelle librerie php non mi andavano mentre su ubuntu ha funzionato immediatamente. Dato che è solo uno script php che modifica il db si può fare in modo che venga eseguito anche su una macchina diversa da quella dove risiede il db/sito l'importante è la raggiungibilità del mysql con le credenziali che si possiedono.
Url camblati
Lo script cambia solo gli url nel db che sono stati impostati da wordpress se l'utilizzatore ha cablato manualmente degli url dentro i temi o javascript potrebbe essere necessario modificarli manualmente.
Per identificare gli url nei file
cd /var/www/nomeprogetto
grep -r http://url.orgiinale.it *
Mentre per modificarli basta
find ./ -type f -exec sed -i 's/http:\/\/url.originale.it/http:\/\/url.da.sostituire.com/g' '{}' \;
Notare l'annullamento del metacarattere / tramite \ , operazione tipica degli shell script
Gli url camblati nei temi possono essere anche nel db li bisogna agire manualmente o con script sql perchè non è lo standard quindi non vengono toccati dallo script di modifica.
Password persa
Sulla doc di wordpress ci sono molti modi di recover della password ma nessuno mi ha funzionato nella versione che avevo io. Quindi ho preso un'altra installazione con un utente di cui conoscevo la password e ho fatto copia e incolla dell'hash nel campo password della tabella dei wp-users
Installazione plugin
Mi chiedeva l'accesso fpt per installare un plugin da aggiungi plugin. Da questa pagina http://stackoverflow.com/questions/640409/can-i-install-update-wordpress-plugins-without-providing-ftp-access
ho trovato questo
In wp-config.php add define('FS_METHOD', 'direct');
chmod 777 wp-content/
chmod 777 wp-content/plugins/
Install the plugin.
Worked on version 3.2.1
Moduli php base e aggiuntivi ubuntu
Una mia installazione di wordpress aveva bisogno di usare il gd per alcune operazioni sulle immagini e il curl per richiamare un web service si installano così su ubuntu
apt-get install apache2 mysql-server php5-mysql php5 php5-gd php5-curl libapache2-mod-php5
a2enmod rewrite
service apache2 restart
Elenco moduli redhat
yum install php53.i386 php53-common.i386 php53-gd.i386 php53-ldap.i386 php53-mysql.i386
Per controllare se i moduli sono stati caricati basta mettere nella home di wordpress un file
cat phpinfo.php
<?php
// Show all information, defaults to INFO_ALL
phpinfo();
?>
se aprendo la pagina risultante si trovano con una ricerca gd e curl vuol dire che funzionano.
Mail da wordpress
Bisogna configurare questo file /etc/mail/sendmail.mc
e il php.ini