Add new comment

Drupal. Clean-URL con lighttpd

Aunque en mi proveedor de hosting el servidor utilizado es el inestimable apache, en casa prefiero optar por un servidor web que sea algo más ligero, por eso trabajo con lighttpd.

Para trabajar con la versión de pre-producción de mi Drupal habilitando el "formato limpio de URL", conocido en el argot como clean-url, en el que desaparecen de las direcciones web símbolos y demás caracteres sobrantes utilizados, normalmente, en las consultas realizadas a las bases de datos, he retocado un par de ficheros de configuración que indico a continuación.

1.- El fichero de configuración de lighttpd:

alpechin:/etc/lighttpd# emacs lighttpd.conf

En el que añadimos al final la siguiente línea:

### Habilitamos cleanURL en drupal
server.error-handler-404 = "/index.php"

2.- Y añadimos el siguiente código al final del fichero:

/var/www/drupal.alpechin/sites/default]> emacs settings.php
if (strpos($_SERVER['SERVER_SOFTWARE'], 'lighttpd') !== false) {
    $_lighty_url = $base_url.$_SERVER['REQUEST_URI'];
    $_lighty_url = @parse_url($_lighty_url);

    if ($_lighty_url['path'] != '/index.php' && $_lighty_url['path'] != '/update.php' && $_lighty_url['path'] != '/') {
        $_SERVER['QUERY_STRING'] = $_lighty_url['query'];
        parse_str($_lighty_url['query'], $_lighty_query);
        foreach ($_lighty_query as $key => $val)
            $_GET[$key] = $_REQUEST[$key] = urldecode($val);
        $_GET['q'] = $_REQUEST['q'] = urldecode(substr($_lighty_url['path'], 1));
    }
}

3.- Rearrancamos lighttpd:

alpechin:~# /etc/init.d/lighttpd restart

4.- Y habilitamos las clean-url aquí: /admin/settings/clean-urls

Y a seguir disfrutando.

P.D.: Este código ha sido construido tras buscar mucho en google. Incorpora todos los parches que he ido encontrando para evitar disfunciones, y por ahora ha funcionado siempre, con todos los módulos que suelo tener instalados y con los que voy probando. Si quieres dejarme alguna puntualización/sugerencia, por favor, deja un comentario. Gracias.

Clasificado en artículos de:

comment reply