{"id":446,"date":"2012-12-03T14:43:23","date_gmt":"2012-12-03T13:43:23","guid":{"rendered":"http:\/\/www.ub.edu\/tecnicweb\/?p=446"},"modified":"2012-12-10T11:02:14","modified_gmt":"2012-12-10T10:02:14","slug":"fer-adreces-amigables","status":"publish","type":"post","link":"https:\/\/www.ub.edu\/tecnicweb\/fer-adreces-amigables\/","title":{"rendered":"Adreces amigables"},"content":{"rendered":"<p>Per raons d&#8217;indexar millor les nostres p\u00e0gines en els cercadors o per fer-ne publicitat m\u00e9s f\u00e0cilment ens pot interesar tenir\u00a0 adreces de Internet (URL&#8217;s) amigables . S&#8217;ha de tenir en compta que els gestors de continguts (CMS&#8217;s)\u00a0 ja incorporen sistemes per fer-ho i no es necessita fer res d&#8217;aix\u00f2 que s&#8217;explica a continuaci\u00f3 sino que ja ho fan de manera automatitzada.<\/p>\n<p>Aix\u00ed doncs, per exemple, una adre\u00e7a del tipus:<\/p>\n<p>https:\/\/www.ub.edu\/tecnicweb\/index.php?id=23&#038;order=asc&#038;item=32&#038;cat=33<\/p>\n<p>ens podria interesar accedir a ella com<\/p>\n<p>https:\/\/www.ub.edu\/tecnicweb\/adreces_amigables<\/p>\n<p>Per fer aix\u00f2, utilitzarem un fitxer .htaccess i definirem el que s\u2019anomena una regla de reescriptura. El fitxer .htaccess l\u2019haureu de crear vosaltres. Al directori on coloquem aquest fitxer, i als subdirectoris que en pengin, s\u2019aplicar\u00e0 el la regla que es defineixi .<\/p>\n<p>Aix\u00ed per exemple per fer una regla per l&#8217;exemple anterior, el fitxer .htaccess haur\u00e0 de tenir el seg\u00fcent:<\/p>\n<p>RewriteEngine on<br \/>\nRewriteCond %{REQUEST_FILENAME} !-f<br \/>\nRewriteRule\u00a0 ^adreces_amigables index.php?id=23&amp;order=asc&amp;item=32&amp;cat=33<\/p>\n<p>La primera l\u00ednea (<em>RewriteEngine on<\/em>) activa el sistema de reescriptura de URLs.<\/p>\n<p>Amb la segona l\u00ednea (<em>RewriteCond %{REQUEST_FILENAME} !-f<\/em>) obliguem a que si un fitxer o una carpeta existeix com tal es far\u00e0 servir aquell fitxer o carpeta en comptes de fer qualsevol acci\u00f3 .<\/p>\n<p>La tercera l\u00ednea (<em>RewriteRule\u00a0 ^adreces_amigables index.php?id=23&amp;order=asc&amp;item=32&amp;cat=33<\/em>) \u00e9s la que crea realment l&#8217;adre\u00e7a amigable. Es basa en expresions regulars, que \u00e9s una forma de expresar una condici\u00f3 o patr\u00f3 en una cadena (en aquest cas, el nom de la URL a cargar) per a qu\u00e8 si la cadena encaixa en el patr\u00f3 realitzar una acci\u00f3 concreta (en aquest cas, redirigir a un fitxer). Les expresions regulars s\u00f3n un mon ric i complex del que podeu trobar m\u00e9s informaci\u00f3 a <a href=\"http:\/\/es.wikipedia.org\/wiki\/Expresi%C3%B3n_regular\">http:\/\/es.wikipedia.org\/wiki\/Expresi%C3%B3n_regular<\/a><\/p>\n<p>Aix\u00ed doncs, amb l&#8217;exemple anterior, escriure<\/p>\n<p>https:\/\/www.ub.edu\/tecnicweb\/adreces_amigables<\/p>\n<p>ser\u00eda equivalent a escriure<\/p>\n<p>https:\/\/www.ub.edu\/tecnicweb\/index.php?id=23&#038;order=asc&#038;item=32&#038;cat=33.<\/p>\n<p>Encara que en el servidor no existeix f\u00edsicament ni un fitxer ni una carpeta amb el nom adreces_amigables, retornar\u00e0 el resultat de la p\u00e0gina generada per la ruta que hem indicat.<\/p>\n<p>Al definir les expresions regulars podem definir tamb\u00e9 patrons que capturarem per a pasar com a par\u00e0metre al fitxer indicat. Aix\u00ed per exemple, amb aquesta regla:<\/p>\n<p>Rewriterule ^noticia\/(.+) index.php?modulo=noticias&amp;id=$1<\/p>\n<p>l&#8217;adre\u00e7a<\/p>\n<p>https:\/\/www.ub.edu\/tecnicweb\/noticia\/22<\/p>\n<p>ser\u00eda equivalent a escriure<\/p>\n<p>https:\/\/www.ub.edu\/tecnicweb\/index.php?modulo=noticias&amp;id=22 .<\/p>\n<p>Podeu trobar m\u00e9s informaci\u00f3 al respecte i m\u00e9s exemples en el\u00a0<a href=\"http:\/\/httpd.apache.org\/docs\/2.0\/rewrite\/rewrite_guide_advanced.html\" target=\"_blank\">web d\u2019Apache.\u00a0<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Per raons d&#8217;indexar millor les nostres p\u00e0gines en els cercadors o per fer-ne publicitat m\u00e9s f\u00e0cilment ens pot interesar tenir\u00a0 adreces de Internet (URL&#8217;s) amigables . S&#8217;ha de tenir en compta que els gestors de continguts (CMS&#8217;s)\u00a0 ja incorporen sistemes per fer-ho i no es necessita fer res d&#8217;aix\u00f2 que s&#8217;explica a continuaci\u00f3 sino que [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[44],"tags":[12,29,54],"class_list":["post-446","post","type-post","status-publish","format-standard","hentry","category-ajuda","tag-apache","tag-htaccess","tag-adreces-amigables"],"_links":{"self":[{"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/posts\/446","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/comments?post=446"}],"version-history":[{"count":9,"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/posts\/446\/revisions"}],"predecessor-version":[{"id":453,"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/posts\/446\/revisions\/453"}],"wp:attachment":[{"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/media?parent=446"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/categories?post=446"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ub.edu\/tecnicweb\/wp-json\/wp\/v2\/tags?post=446"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}