INSTALAR DOKUWIKI

Dokuwiki - Notas rápidas que tomé en pruebas . No hay capturas :(

Esto requiere un webserver, php

Actualizamos paquetes
    apt-get update
    apt-get upgrade


Instalar nginx
    apt-get install nginx


    Se instalarán los siguientes paquetes extras:
      libgd2-noxpm libjpeg8 libpng12-0 libxslt1.1 nginx-common nginx-full
    Paquetes sugeridos:
      libgd-tools
    Se instalarán los siguientes paquetes NUEVOS:
      libgd2-noxpm libjpeg8 libpng12-0 libxslt1.1 nginx nginx-common nginx-full
    0 actualizados, 7 se instalarán, 0 para eliminar y 0 no actualizados.

   
service nginx start   

Comprobamos que en un navegador accediendo por ip 192.168.1.250 nos aparece
    Welcome to nginx!

   
Instalar php
    ## antes apt-get install php5-fpm php5-gd php5-cli php5-mcrypt
   

    Se instalarán los siguientes paquetes NUEVOS:
        fontconfig-config libfontconfig1 libgd2-xpm libltdl7 libmcrypt4 libonig2 libqdbm14 php5-cli php5-common php5-fpm php5-gd php5-mcrypt ttf-dejavu-core
    0 actualizados, 13 se instalarán, 1 para eliminar y 0 no actualizados.

    apt-get install php5-fpm php5-gd
        Se instalarán los siguientes paquetes NUEVOS:
        fontconfig-config libfontconfig1 libgd2-xpm libonig2 libqdbm14 php5-common php5-fpm php5-gd ttf-dejavu-core

   
Abrir la configuracion de php como root
        nano /etc/php5/fpm/php.ini

Localizar el parametro cgi.fix_pathinfo
            cgi.fix_pathinfo=0
           
Cambiamos el procesador php para que busque conexiones usando un socket en vez de un puerto
    nano /etc/php5/fpm/pool.d/www.conf
Buscar listen y cambiarlo por
        listen = /var/run/php5-fpm.sock

Esto ya estaba cambiado

       
Reiniciar php
    service php5-fpm restart

   
   
Configurar nginx
    cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.BAK
    cat /etc/nginx/sites-available/default | grep -v "#" > /etc/nginx/sites-available/default-limpio
    mv /etc/nginx/sites-available/default-limpio /etc/nginx/sites-available/default
   
    nano /etc/nginx/sites-available/default
   
Añadimos / cambiamos estas lineas
    Escuchar en puerto 80
    listen 80;
   
    Buscar index.php
    index index.php index.html index.htm;

    Nombre del servidor
    server_name 192.168.1.250
   
   
    Manejo de errores. Añadir
        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        root /usr/share/nginx/www;
        }

   
   
   
   
Al final nos queda asi
root@debian7:/etc/nginx/sites-available# vi default

server {
    # escuchar en puerto 80
    listen   80;
   
    # ruta a carpetas y ficheros a buscar
    root /usr/share/nginx/www;
    index index.php index.html index.htm;

    # nombre - ip del servidor
    server_name 192.168.1.250;

    location / {
        try_files $uri $uri/ /index.html;
    }

    # manejo de errores   
    error_page 404 /404.html;

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/www;
    }

    # try_files directive that goes along with our PHP configuration choice to discard PHP files that are not exact matches.
    location ~ \.php$ {
        try_files $uri =404;
       
        # fastcgi_param directive to pass the correct script name to our processor to execute.
       
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
    # block access to a number of directories that DokuWiki uses internally, but which should not be accessible from the web
    location ~ /\.ht {
        deny all;
    }

    location ~ /(data|conf|bin|inc)/ {
        deny all;
    }
}

Reiniciar servicio nginx
# service nginx restart


Comprobar que se puede ejecutar php en nuestro servidor
Creamos un fichero de texto llamado /usr/share/nginx/www/info.php que tiene esta cadena "<?php phpinfo(); ?>"


    # sh -c 'echo "<?php phpinfo(); ?>" > /usr/share/nginx/www/info.php'


En un navegador vamos a http://192.168.1.250/info.php
Nos tiene que salir la pagina de phpinfo

Si todo sale correcto borramos el fichero creado antes
    rm /usr/share/nginx/www/info.php


Instalamos dokuwiki




   
Descargar y descomprimir dokuwiki

    cd /root
    wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz -O dokuwiki.tgz
    tar -zxvf dokuwiki.tgz

   
Eliminamos el tgz
    rm dokuwiki.tgz

Cambiamos el nombre por algo mas manejable
    # mv doku* wiki

Movemos el directorio a la ruta de      /usr/share/nginx/www   
    mv wiki /usr/share/nginx/www/

Cambiamos permisos para que el usuario www-data pueda acceder a docuwiki

    cd /usr/share/nginx/www/wiki

    sudo chown -R www-data data
    sudo chown www-data lib/plugins/
    sudo chown www-data conf


Instalamos dokuwiki
    http://192.168.1.250/wiki/install.php

En la pagina que aparece
    ponemos un nombre
    wikiname  = wikipepe
    enable acl activado
    superuser = pepe
    real name = pepe
    email =     pepe@pepe.com
    password  = patata
   
    initial acl policy = open
   
    cc atribution share-alike
   
    Save
   

   
   
Por seguridad borramos el fichero de instalacion
rm /usr/share/nginx/www/wiki/install.php 

En nuestro caso lo renombramos no sea que haga falta de nuevo.
 mv /usr/share/nginx/www/wiki/install.php /usr/share/nginx/www/wiki/install.php.old
     

Referencias
https://www.digitalocean.com/community/tutorials/how-to-install-dokuwiki-with-nginx-on-an-ubuntu-12-04-vps

Comentarios

Entradas populares de este blog

Cómo saber el UUID de un equipo

Reducir el tamaño de install.wim a menos de 4 GB

Monitor HP No funciona ningún botón - OSD LOCKOUT