Come abilitare URL semplificati (Clear URL) con openSUSE 11.x

Per abilitare la funzione degli URL semplificati bisogna configurare in Apache il modulo di rewrite (mod_rewrite).

Cominciamo con l'editare il file /etc/sysconfig/apache2. In questo file sono presenti tutti i moduli che apache deve utilizzare quando viene avviato. Cerchiamo la riga con i moduli abilitati e aggiungiamo mod_rewrite.

Esempio:

da root

#vi /etc/sysconfig/apache2

APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 mod_rewrite"

Adesso dobbiamo configurare il nostro server di default o il nostro Virtual host, dipende da quale si utilizza.

Alla voce Options togliamo none e aggiungiamo SymLinksIfOwnerMatch, poi inseriamo queste righe:

Esempio.

da root

# vi /etc/apache2/default-server.conf

<Directory "/srv/www/htdocs">
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        #
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        #
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs-2.2/mod/core.html#options
        # for more information.
        #Options None #originale
        # Settaggio di Option per clear url di Drupal
        Options SymLinksIfOwnerMatch
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        AllowOverride None
        # Controls who can get stuff from this server.
        Order allow,deny
        Allow from all

        # Settaggio per clear url di Drupal
        RewriteEngine On
        RewriteBase /
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</Directory>

Adesso facciamo ripartire Apache con:

da root

# rcapache restart

ed infine abilitiamo gli url semplificati in Drupal nella sezione amministra URL Semplificati

 

 Bibliografie:

http://httpd.apache.org/docs/2.2/mod/core.html

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html