Ya hemos visto como instalar Wordpress con Apache y MPM-Event, que es la forma más eficiente de usar Apache con PHP, hemos visto como hacerlo con Ubuntu LTS y Debian ahora vamos a ver como hacer lo mismo en FreeBSD.

FreeBSD es como un primo de las distribuciones de GNU/Linux tiene algunas diferencias y por lo general es considerado com más estable y con mejor desempeño que sus primos pingüinos. Vamos a la instalación.

Apache MPM Event

Vamos a instalar Apache. Con FreeBSD hay dos formas de instalar software1 desde las fuentes y compilando el software para la arquitectura de tu servidor, o utilizadon binarios pre-compilados. Vamos a hacerlo compilando las fuentes.

cd /usr/ports/www/apache24/
make install clean

En la siguente pantalla ve al final y marca MPM-Event.

habilitar MPM-Event en Apache 2.4 en FreeBSD

Configuremos Apache:

vim /usr/local/etc/httpd.conf

Y colocamos esta linea, justo antes del último Include

ServerName localhost

Y nos aseguramos que estos módulos esten activos.

LoadModule authn_core_module libexec/apache24/mod_authn_core.so
LoadModule authz_core_module libexec/apache24/mod_authz_core.so
LoadModule log_config_module libexec/apache24/mod_log_config.so
LoadModule expires_module libexec/apache24/mod_expires.so
LoadModule headers_module libexec/apache24/mod_headers.so
LoadModule version_module libexec/apache24/mod_version.so
LoadModule unixd_module libexec/apache24/mod_unixd.so
LoadModule vhost_alias_module libexec/apache24/mod_vhost_alias.so
LoadModule dir_module libexec/apache24/mod_dir.so
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
LoadModule mime_module  libexec/apache24/mod_mime.so
LoadModule actions_module libexec/apache24/mod_actions.so
LoadModule alias_module libexec/apache24/mod_alias.so
LoadModule authz_host_module libexec/apache24/mod_authz_host.so
LoadModule access_compat_module libexec/apache24/mod_access_compat.so
LoadModule proxy_module libexec/apache24/mod_proxy.so
LoadModule proxy_fcgi_module libexec/apache24/mod_proxy_fcgi.so

También debemos incluir estas líneas debajo de la línea del archivo /usr/local/etc/apache24/httpd.conf

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

Y busando la línea: _DirectoryIndex index.html_, la cambiamos por:
DirectoryIndex index.php index.html

Vamos ahora a crear nuestro servidor virtual.

vim /usr/local/etc/apache24/Includes/site1.conf

Y copiamos estas líneas.

    <VirtualHost *:80>
        ServerAdmin webmaster@example.com
        DocumentRoot "/usr/local/www/site1/public_html"
        ServerName wordpress.garron.me
        ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/usr/local/www/site1/public_html/$1
        ErrorLog "/usr/local/www/site1/logs/error.log"
        CustomLog "/usr/local/www/site1/logs/access.log" common
        ScriptAlias /cgi-bin/ "/usr/local/www/site1/cgi-bin/"

    <Directory "/usr/local/www/site1/public_html">
        Options +Indexes +FollowSymLinks +ExecCGI
        AllowOverride AuthConfig FileInfo
        Require all granted
        Allow from all
    </Directory>

</VirtualHost>

Asegurate de cambiar la línea ServerName y DocumentRoot de acuerdo a tus necesidades.

PHP

Para que Wordpress funcione vamos a requerir de PHP, mismo que vamos a instalar ahora mismo.

cd /usr/ports/lang/php56
make install

Nuevamente vamos con las opciones por defecto.

Y finalmente las extenciones.

cd ../php56-extensions/
make install clean

Estos son los más importantes, asegurate que esten marcados.

|+[x] CURL          CURL support
|+[x] GD            GD library support
|+[x] MYSQL         MySQL database support
|+[x] MYSQLI        MySQLi database support

Habilitemos php.ini

cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Vamos ahora a comprobar que PHP esta funcionando, habilitemos Apache y PHP-FPM para arrancar al inicio.

vim /etc/rc.conf

Y colocamos estas lineas:

apache24_enable="YES"
php_fpm_enable="YES"

Vamos a crear el directorio donde estará el código de Wordpress.

mkdir -p /usr/local/www/site1/{public_html,logs}

Por el momento vamos a colocar allí un archivo llamado phpinfo.php

echo '<?php phpinfo(); ?>' > /usr/local/www/site1/public_html/phpinfo.php

Y ahora nos aseguramos de que los servicios esten corriendo:

/usr/local/etc/rc.d/apache24 restart
/usr/local/etc/rc.d/php-fpm restart

Si vas a la dirección de tu servidor o a su IP, en mi caso http://wordpress.garron.me/phpinfo.php debes obtener una pantalla similar a esta.

imágen de la información de PHP Info

MySQL

Para que Wordpress funcione, requiere de una base de datos, y para ello tenemos que instalar MySQL.

cd /usr/ports/databases/mysql55-server/
make install clean

Hagamos que arranque al inicio, cuando se reinicie el server.

vim /etc/rc.conf

Y agregamos esta línea:

mysql_enable="YES"

Arrancamos el servicio.

/usr/local/etc/rc.d/mysql-server onestart

y asignamos un password para root.

'/usr/local/bin/mysqladmin' -u root password 'cambia_este_pass'

Creamos el archivo de configuración:

cp /usr/local/share/mysql/my-small.cnf /etc/my.cnf

Y reiniciamos el servicio.

/usr/local/etc/rc.d/mysql-server restart

Creamos la base de datos para Wordpress

Para ello, vamos a ingresar al prompt de MySQL como usuario root

/usr/local/bin/mysql -u root -p

Y luego ingresamos estas líneas.

CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"localhost" IDENTIFIED BY "cambia_este_pass";
FLUSH PRIVILEGES;
EXIT

Wordpress

Vamos ahora a instalar Wordpress.

cd /tmp
curl -O https://es.wordpress.org/wordpress-4.2.2-es_ES.tar.gz
tar xvzf wordpress-4.2.2-es_ES.tar.gz
mv wordpress/* /usr/local/www/site1/public_html/
chown -R www:www /usr/local/www/site1

Estamos listos para configurar Wordpress, vamos a la dirección de tu servidor y verás estas pantallas:

Instalando y configurando Wordpress


Instalando Wordpress base de datos


Instalando Wordpress


Concluyendo instalación de Wordpress

  1. Volver al índice

Sugerencias, comentarios o consultas aquí

Editado por última vez: 24 de mayo de 2015

1 Con Ubuntu y Debian también es posible pero no tan común