WordPress en Raspberry Pi

Primer post del blog!! Tot just acabo de instalar el wordpress i vaig a recopilar tots els pasos.
En la RaspberryPi he instalat com a operatiu un debian amb els daemons nginx, php-fpm i mysql per a fer correr el wordpress. Enumero els pasos:

    • Instalo berryboot en la targeta SD, on instalo el debian en la raspberry, aqui més info
    • Faig un “apt-get update” per actualitzar les fonts dels repositoris i instalo el meu editor preferit.
    • Instalo tots els dimonis:
$sudo apt-get install nginx php5-fpm php5-cgi php5-cli php5-common php5-curl php5-gd php5-mcrypt php5-mysql mysql-server
  • Configuro el php-fpm amb el nginx, per utilizarem un file unix per comunicar la interpretació del  php amb el nginx que el servirà, en conclusió, definirem el virtualhost de nginx i settejarem una variable del php

File: /etc/nginx/sites-available/marc.cortinasval.cat

server {
        listen   80; ## listen for ipv4; this line is default and implied
        root /usr/share/nginx/www;
        index index.php;
        server_name marc.cortinasval.cat;
        location / {
                rewrite  ^/?$  /blog/  redirect;
                try_files $uri $uri/ /index.php;
        }
        location /blog/ {
                try_files $uri $uri/ /blog/index.php?$args;
        }
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }
        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }
        location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
        }
        location ~ /\.ht {
                deny all;
        }
        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
}

Ens asegurem que el socket unix definit en el fastcgi_pass del nginx correspon al del php-fpm

$ grep listen /etc/php5/fpm/pool.d/www.conf
listen = /var/run/php5-fpm.sock

Finalment canviarem el parametre del cgi.fix_pathinfo a 0 en el file /etc/php5/fpm/php.ini

$grep cgi.fix_pathinfo /etc/php5/fpm/php.ini
cgi.fix_pathinfo=0
  • Instalo wordpress, per una banda els fitxers php de blog i per una altra preparem la base de dades de mysql que utilitzara i configurem la cadena de conexió de la aplicació.

Baixem la aplicacio i la posem on toca

$ cd /usr/share/nginx/www/
$ wget http://wordpress.org/latest.zip
$ unzip latest.zip
$ mv wordpress blog
$ rm latest.zip

Preparem la base de dades en mysql, des del client del mysql

mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (6.58 sec)
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"localhost"IDENTIFIED BY "wordpress";
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)
mysql> exit;
Bye

Configurem la cadena de conexio de la aplicació

cp wp-config-sample.php wp-config.php
vim wp-config.php
[\sourcecode]

File /usr/share/nginx/www/blog/wp-config.php

[sourcecode]
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'wordpress');
/** MySQL database password */
define('DB_PASSWORD', 'wordpress');
/** MySQL hostname */
define('DB_HOST', 'localhost');

Corregim permisos i reiniciem dimonis

$sudo chown -R www-data.www-data /usr/share/nginx/www/
$sudo service nginx restart 
$sudo service php5-fpm restart

Accedem via web on configurarem el nom del blog i el nom i password del usuari que administrarà el blog, en aquest pas serà quant es crearà la estructura de dades en el mysql.

Configuro el permanent link del wordpress, aixo serveix per a tenir url’s més amistoses, com per exemple:  https://marc.cortinasval.cat/index.php/2013/03/wordpress-en-raspberry-pi
Per aconseguir-ho, primer ens asegurem que tenim les seguents linies en el virtualhost de nginx i després anem a settings–>permalinks i configurem el format.
File: /etc/nginx/sites-available/marc.cortinasval.cat

...
        location /blog/ {
                try_files $uri $uri/ /blog/index.php?$args;
        }
...
  • Afegeixo i configuro els pluguins de wordpress, llisto aquí els que més m’han molat:

SyntaxHighlighter Evolved
WP to Twitter
NextScripts: Social Networks Auto-Poster
Author Spotlight (Widget)
ExtraWatch Live Stats and Visitor Counter FREE
Google Analytics
Google Analytics for WordPress
Social Login for wordpress
User Photo

  • Poso un minim de categories i creo un menu amb aquestes categories
  • Finalment em baixo un thema i poso el menu en el tema
  • Poso el witget de delicious

Escric aquest primer post i ja tinc el blog preparat per a recopilar més info!!!!