Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more. :: Mappa del sito
Tutorials & Scripts, PHP, Linux and more.

Home :: Apache :: Indice Apache

Usare il mod_rewrite: trasformare pagine php in html

Inserito il: 13-05-2005


Grazie al Web Sever Apache abbiamo la possibilità di intervenire sulla sintassi delle URL per modificarle. In questo articolo vedremo come agire sull'estensione di un file ".php" in modo da trasformala in ".html".

A questo scopo potrebbe dover essere necessario abilitare il modulo di Apache che presiede alla "riscrittura" delle URL noto come: mod_rewrite; per fare ciò dovremo editare il file di configurazione di Apache "httpd.conf" ed intervenire sulle due voci specifiche riferite a questo modulo.

La prima voce è la seguente:
LoadModule rewrite_module modules/mod_rewrite.so
La seconda è
AddModule mod_rewrite.c
A volte queste due istruzioni sono entrambe "commentate" dal simbolo del cancelletto "#" e quindi non abilitate di default; in questo sarà sufficiente eliminare entrambi i "#" e salvare le modifiche apportate ad "httpd.conf" per poter utilizzare il mod_rewrite.

Una volta abilitato il modulo per il "rewriting" dovremo inserire un file ".htaccess" nella directory in cui si trova il documento di cui vogliamo modificare l'estensione. Un ".htaccess" non è altro che un file in cui vengono inserite delle direttive che il Web server dovrà rispettare.

Se per esempio volessimo trasformare in ".html" l'estensione di un file chiamato "pagina.php" interno ad una directory nominata "site", dovremmo inserire all'interno di "site" un file che chiameremo ".htaccess" (senza ulteriori specifiche) contenente le seguenti istruzioni:
RewriteEngine on 


RewriteRule ^pagina.php$ pagina.html [L]
La direttiva RewriteEngine settata su "on" permetterà il "rewriting" all'interno della directory in cui l'".htaccess" è stato inserito. RewriteRule, invece, indicherà quali saranno le pagine interessate al "rewriting" e il modo in cui esso avverrà; nel nostro caso RewriteRule trasformerà l'estensione ".php" del file "pagina" in ".html" senza intervenire su altri documenti.

Tenete conto che "pagina" continuerà ad essere in tutto è per tutto un file PHP, ciò accade perché il "rewriting" non agisce sui contenuti di un file ma esclusivamente sulle URL che portano ad esso; quindi, sempre nel nostro caso, "http://www.nome_sito.it/site/pagina.html" equivarrà a "http://www.nome_sito.it/site/pagina.php".

Il "rewriting", viene spesso utilizzato per rendere pił semplice l'indicizzazione delle pagine Web da parte dei motori di ricerca, infatti, i loro "crawler" sono notoriamente poco attratti da URL complesse soprattutto se contenenti variabili.

Se per esempio volessimo trasformare l'URL: "http://www.nome_sito.it/index.php?page=news" nella pił semplice: "http://www.nome_sito.it/news.html", potremo scrivere il nostro ".htaccess" in questo modo:
RewriteEngine on 
RewriteRule 

^http://www.nome_sito.it/index.php?page=news$ 
http://www.nome_sito.it/news.html [L]


Indice Apache
CGI (11)
Java (12)
Jsp (16)
Linux (18)
Manuali (6)
Perl (12)
Php (134)
PostgreSQL (12)
Tomcat (10)
Unix (12)
Libri (0)
Forum



I filtri di Apache
Apache ha la possibilità di filtrare le richieste provenienti dai client e di soddisfare soltanto quelle trasmesse da utenti eventualmente... Leggi l'articolo


Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti

Mrwcorsi.it
Mrwebmaster.it
4 You Gratis.it
Ceptive.it
Giochi Gratis
Pierotofy.it
Giornale Webmaster
Manuali
Morpheusweb.it
SEO Directory
Visual designer
Forum per Webmaster




Pagina caricata in 9.7036 secondi. | Per informazioni | ©CG di Claudio Garau P.IVA 03219430927 RSS