{"id":1198,"date":"2012-05-31T06:00:52","date_gmt":"2012-05-31T05:00:52","guid":{"rendered":"http:\/\/www.manuelmarangoni.it\/sir-bit\/?p=1198"},"modified":"2016-02-03T17:43:51","modified_gmt":"2016-02-03T16:43:51","slug":"tutti-i-codici-per-reindirizzare-lutente-verso-unaltra-pagina-in-modo-automatico","status":"publish","type":"post","link":"https:\/\/www.manuelmarangoni.it\/sir-bit\/1198\/tutti-i-codici-per-reindirizzare-lutente-verso-unaltra-pagina-in-modo-automatico\/","title":{"rendered":"Tutti i codici per reindirizzare l&#8217;utente verso un&#8217;altra pagina in modo automatico"},"content":{"rendered":"<p>A seconda del linguaggio di programmazione usato e del sistema che si predilige, abbiamo a disposizione <strong>diversi modi per reindirizzare un utente verso un&#8217;altra pagina<\/strong> in modo del tutto automatico.<br \/>\nIl <em>redirect<\/em> ci \u00e8 utile in numerose situazioni. Un esempio l&#8217;abbiamo nel caso in cui, nel sito, abbiamo un&#8217;area riservata accessibile solo agli utenti registrati; se un utente non registrato cercher\u00e0 di accedere a quella pagina, dovremmo bloccarlo con una funzione di controllo e inviarlo a un&#8217;altra pagina di inizio (per esempio l&#8217;home o la pagina di login).<\/p>\n<p><strong>In questo articolo vedremo:<\/strong><br \/>\n&#8211; reindirizzamento con puro html<br \/>\n&#8211; reindirizzamento tramite htaccess<br \/>\n&#8211; reindirizzamento con javascript<br \/>\n&#8211; reindirizzamento con php<\/p>\n<h2>Html puro e htaccess<\/h2>\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"html4strict\" style=\"font-family: monospace;\"><span style=\"color: #009900;\">&lt;<span style=\"color: #000000; font-weight: bold;\">meta<\/span> <span style=\"color: #000066;\">http-equiv<\/span><span style=\"color: #66cc66;\">=<\/span><span style=\"color: #ff0000;\">\"refresh\"<\/span> <span style=\"color: #000066;\">content<\/span><span style=\"color: #66cc66;\">=<\/span><span style=\"color: #ff0000;\">\"5;url=home.php\"<\/span>&gt;<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Il codice sopra va inserito entro i tag : si tratta infatti di <strong>un attributo metatag che agisce al caricamento della pagina<\/strong>.<br \/>\nIl numero iniziale (&#8220;5&#8221;) sono i secondi che passano prima di essere reindirizzati dal momento in cui si accede alla pagina. Il campo <em>url<\/em> stabilisce invece la pagina di destinazione del reindirizzamento. Naturalmente al posto di <code>home.php<\/code> si pu\u00f2 inserire un indirizzo internet completo (es: \u201chttp:\/\/www.sito.it\/\u201d).<\/p>\n<p>Con l\u2019htaccess il concetto \u00e8 un po\u2019 diverso. Per un <strong>approfondimento completo sull\u2019uso dell\u2019htaccess<\/strong> fate riferimento a <a title=\"Mostrare i get dei link come cartelle \u2013 L\u2019uso di htaccess nel sito: cos\u2019\u00e8 e come funziona | Sir Bit\" href=\"https:\/\/www.manuelmarangoni.it\/sir-bit\/899\/mostrare-i-get-dei-link-come-cartelle-l%E2%80%99uso-di-htaccess-nel-sito-cos%E2%80%99e-e-come-funziona-parte-01\/\">questo articolo<\/a>. I commenti si spiegano da soli.<!--more--><\/p>\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1\r\n2\r\n3<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"text\" style=\"font-family: monospace;\">#Qui sotto invece un esempio di redirect 301\r\n#Indirizza le sottocartelle di \/ecommerce\/ verso sito.it\r\nredirect 301 \/ecommerce\/ http:\/\/www.sito.it\/<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1\r\n2\r\n3\r\n4\r\n5<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"text\" style=\"font-family: monospace;\">#Se l'indirizzo non \u00e8 n\u00e8 www.sito.it n\u00e8 sito.it, reindirizza a altro_sito.com\r\nRewriteEngine On\r\nRewriteCond %{HTTP_HOST} !www.sito.it\r\nRewriteCond %{HTTP_HOST} !sito.it\r\nRewriteRule (.*)$ http:\/\/www.altro_sito.com [R=301,L]<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h2>PHP, ASP e Javascript<\/h2>\n<p><strong>In php per reindirizzare si fa uso della funzione <code>header<\/code><\/strong>. Le due righe qui sotto sono equivalenti, con la differenza che nel secondo caso \u00e8 possibile stabilire un tempo di attesa (come nel codice html visto sopra).<\/p>\n\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1\r\n2\r\n3\r\n4\r\n5<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"php\" style=\"font-family: monospace;\"><span style=\"color: #000000; font-weight: bold;\">&lt;?php<\/span>\r\n<span style=\"color: #666666; font-style: italic;\">\/\/Reindirizza alla pagina \"home.php\"; deve essere inserito all'inizio del codice php<\/span>\r\n<span style=\"color: #990000;\">header<\/span><span style=\"color: #009900;\">(<\/span><span style=\"color: #0000ff;\">\"Location: home.php\"<\/span><span style=\"color: #009900;\">)<\/span><span style=\"color: #339933;\">;<\/span>\r\n<span style=\"color: #990000;\">header<\/span><span style=\"color: #009900;\">(<\/span><span style=\"color: #0000ff;\">\"Refresh: 0; URL=home.php\"<\/span><span style=\"color: #009900;\">)<\/span><span style=\"color: #339933;\">;<\/span>\r\n<span style=\"color: #000000; font-weight: bold;\">?&gt;<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p><strong>In asp il concetto \u00e8 lo stesso<\/strong>:<\/p>\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1\r\n2\r\n3<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"asp\" style=\"font-family: monospace;\"><span style=\"color: #000000; font-weight: bold;\">&lt;%<\/span>\r\n<span style=\"color: #990099; font-weight: bold;\">Response<\/span>.<span style=\"color: #330066;\">Redirect<\/span><span style=\"color: #006600; font-weight: bold;\">(<\/span><span style=\"color: #cc0000;\">\"home.php\"<\/span><span style=\"color: #006600; font-weight: bold;\">)<\/span>\r\n<span style=\"color: #000000; font-weight: bold;\">%&gt;<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Per reindirizzare <strong>con javascript si fa uso del metodo <code>self.location<\/code>.<\/strong> Subito dopo vediamo una funzione in php che permette di richiamare, in qualsiasi punto della pagina, la funzione javascript qui sotto: sar\u00e0 sufficiente evocare la funzione <code>gotoPage<\/code> da noi creata passandogli l\u2019indirizzo della pagina di destinazione.<\/p>\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1\r\n2\r\n3<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"javascript\" style=\"font-family: monospace;\"><span style=\"color: #339933;\">&lt;<\/span>script language<span style=\"color: #339933;\">=<\/span><span style=\"color: #3366cc;\">\"javascript\"<\/span><span style=\"color: #339933;\">&gt;<\/span>\r\nself.<span style=\"color: #660066;\">location<\/span><span style=\"color: #339933;\">=<\/span><span style=\"color: #3366cc;\">\"home.php\"<\/span>\r\n<span style=\"color: #339933;\">&lt;\/<\/span>script<span style=\"color: #339933;\">&gt;<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"wp_syntax\">\n<table>\n<tbody>\n<tr>\n<td class=\"line_numbers\">\n<pre>1\r\n2\r\n3\r\n4\r\n5\r\n6\r\n7\r\n8<\/pre>\n<\/td>\n<td class=\"code\">\n<pre class=\"php\" style=\"font-family: monospace;\"><span style=\"color: #000000; font-weight: bold;\">&lt;?php<\/span>\r\n<span style=\"color: #000000; font-weight: bold;\">function<\/span> gotoPage<span style=\"color: #009900;\">(<\/span><span style=\"color: #000088;\">$indirizzo<\/span><span style=\"color: #339933;\">=<\/span><span style=\"color: #0000ff;\">\"\"<\/span><span style=\"color: #009900;\">)<\/span><span style=\"color: #009900;\">{<\/span>\r\n\t<span style=\"color: #b1b100;\">echo<\/span> <span style=\"color: #0000ff;\">'&lt;script language=\"javascript\"&gt;'<\/span><span style=\"color: #339933;\">;<\/span>\r\n\t<span style=\"color: #b1b100;\">echo<\/span> <span style=\"color: #0000ff;\">'self.location=\"'<\/span><span style=\"color: #339933;\">.<\/span><span style=\"color: #000088;\">$indirizzo<\/span><span style=\"color: #339933;\">.<\/span><span style=\"color: #0000ff;\">'\"'<\/span><span style=\"color: #339933;\">;<\/span>\r\n\t<span style=\"color: #b1b100;\">echo<\/span> <span style=\"color: #0000ff;\">'&lt;\/script&gt;'<\/span><span style=\"color: #339933;\">;<\/span>\r\n<span style=\"color: #009900;\">}<\/span>\r\ngotoPage<span style=\"color: #009900;\">(<\/span><span style=\"color: #0000ff;\">\"home.php\"<\/span><span style=\"color: #009900;\">)<\/span><span style=\"color: #339933;\">;<\/span>\r\n<span style=\"color: #000000; font-weight: bold;\">?&gt;<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Vediamo come fare un redirect, cio\u00e8 reindirizzare l&#8217;utente da una pagina a un&#8217;altra in modo automatico, nei vari linguaggi: html puro, php, asp, javascript e tramite l&#8217;htaccess.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[63,54,24,12,4],"class_list":["post-1198","post","type-post","status-publish","format-standard","hentry","category-programmazione","tag-asp","tag-htaccess","tag-html","tag-javascript","tag-php","cat-3-id"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/posts\/1198"}],"collection":[{"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/comments?post=1198"}],"version-history":[{"count":8,"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/posts\/1198\/revisions"}],"predecessor-version":[{"id":2330,"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/posts\/1198\/revisions\/2330"}],"wp:attachment":[{"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/media?parent=1198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/categories?post=1198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.manuelmarangoni.it\/sir-bit\/wp-json\/wp\/v2\/tags?post=1198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}