Alcuni giorni fa, qualche simpaticone è riuscito a cancellare tutti i file sul server di un sito realizzato con un CMS che si chiama E107, così il proprietario del sito, che è amico mio, mi ha chiesto se potevo ripristinarlo. Ho installato joomla e reinseriti i contenuti.
Adesso ho il problema di reindirizzare diverse pagine create con il precedente CMS, CMS che genera degli URL non amichevoli, ma indirizzi come questi
www.nomesito.ext/page.php?1
www.nomesito.ext/page.php?2
www.nomesito.ext/page.php?3
www.nomesito.ext/page.php?4 ecc ecc
Adesso succede che se clicco su un vecchio link nella serp di Google, la pagina che ricevo è totalmente bianca con questa scritta:
Illegal variable _files or _env or _get or _post or _cookie or _server or _session or globals passed to script.
Ho pensato che per il reinirizzamento bastasse usare ReDj, ma purtroppo con questo componente non è possibile reindirizzare tali pagine; il forum di questo componente, che ringrazio per le pronte risposte, mi hanno spiegato che il problema è a monte di ReDJ, nel senso che prima ancora di arrivare al plugin di ReDJ, Joomla effettua un controllo per bloccare eventuali attacchi (ad esempio, injection di variabili). File request.php, linea 525:
// PHP Zend_Hash_Del_Key_Or_Index bug
$failed |= is_numeric( $key );
Così l'unico modo per reindirizzare è attraverso il file htaccess
Premetto che il server ha attivato il mod_rewrite con .htaccess attivo e joomla è impostato per scrivere URL amichevoli.
Ho fatto qualche prova senza esservi riuscito, aggiungendo questa riga di codice dentro il file di htaccess:
Redirect 301 /page.php?3 http://www.nomedominio.ext/pagina.html
Ho letto varie discussioni e anche esempi in altri siti ma non ne vengo a capo. le pagine che devo reindirizzare sono una quarantina, e mi accontenterei anche di reindirizzarle tutte alla home:
Avete qualche soluzione da consigliarmi?