Sat 20 Jan 2007
Ce este URL rewriting (mod_rewrite din Apache)
Posted by Marian Dobre under Apache Articles[3] Comments
Orice dezvoltator de aplicatii web care se respecta trebuie sa cunoasca principiile rescrierii linkurilor.
Ce inseamna “url rewriting”?
Pe romaneste “rescrierea URL-urilor”, reprezinta de fapt o metoda de scriere “on the fly” a URL-urilor, iar mod_rewrite este modulul din Apache care ne permite acest lucru.
mod_rewrite este folosit pentru rescrierea URL-urilor la nivel de server. De exemplu, un utilizator face o cerere pentru htp://www.numesite.com/ro/produse, insa, de fapt, serverul ii va returna htp://www.numesite.com/index.php?language=ro&page=produse. Bineinteles ca utilizatorului ii va fi ascuns acest aspect.
Pentru a intelege mai bine tehnicile de rewriting ar trebui sa explicam cateva notiuni:
De ce este util url rewriting ?
- imbunatateste gradul de securitate al aplicatiei
- estetica URL-urilor
- indexarea mai usoara de catre motoarele de cautare
- URL-urile vor fi “search engine friendly”
- URL-urile sunt mai usor de retinut de catre utilizatori
URL rewriting imbunatateste gradul de securitate al aplicatiei
Una din metodele folosite pentru a ataca un site este modificarea parametrilor transmisi prin GET(cu alte cuvinte modificarea URL-ului). Aceasta practica este des utilizata in atacurile “sql injection” care pot afecta grav baza de date a site-ului si integritatea datelor.
Sa zicem ca avem un script care afiseaza produsele dintr-o categorie:
www.numesite.ro/produse.php?id_categorie=123
iar hackerul rau intentionat scrie
www.numesite.ro/produse.php?id_categorie=atac
Aceasta actiune va determina in mod normal o eroare la interogarea ce se efectueaza in baza de date si afisarea acesteia in browser.
URL rewriting face ca URL-urile sa fie “search engine friendly”
Exista mitul care spune ca motoarele de cautare nu indexeaza paginile care contin mai multi parametrii (de tipul www.numesite.ro/pagina.php?categorie=123&produs=321&language=ro ). Este o opinie infirmata de majoritatea motoarelor de cautare insa url rewriting este o tehnica foarte puternica de SEO (Search Engine Optimization).
URL-urile vor fi mai usor de retinut de catre utilizatori
Este mult mai usor de retinut un link de forma
www.numesite.ro/Stiri/Imobiliare/
decat
www.numesite.ro/pagina.php?id=123456789
Utilizatorul va time minte mai usor prima forma a URL-ului si va fi mai simplu de identificat din lista de adrese vizitate a browser-ului, in cazul in care pagina a fost vizitata in prealabil.
December 21st, 2008 at 12:29 pm
Foarte adevarat!Ca exemplu, mi-am optimizat paginile din site(un RSS script care afiseaza licitatii Ebay) cu o unealta online – http://www.seochat.com/seo-tools/url-rewriting/
De mentionat este ca se va crea fisierul .htaccess,insa,atentie!pe langa fisierul .htaccess mai trebuiesc modificate si linkurile din php!
September 13th, 2009 at 5:32 am
de vreo 2 luni ma chinui sa gasesc o solutie de rescriere pentru siteul meu . pana acum am cam inteles cat de cat ce ar trebuii sa fac dar nu stiu in afara de httacces ce ar mai trebuii modificat.
April 22nd, 2012 at 4:45 pm
Thank you for posting this information!