Autore Topic: [RISOLTO] redirect di una cartella ad un altra  (Letto 691 volte)

Offline massikk

  • Esploratore
  • **
  • Post: 88
    • Mostra profilo
[RISOLTO] redirect di una cartella ad un altra
« il: 17 Nov 2019, 19:39:29 »
Salve, avrei bisogno di qualche guru per sapere se esiste una regola particolare per htaccess.
In pratica dovrei rinominare le url che hanno al loro interno una particolare cartella...
esempio pratico
www.miosito.it/cartella1/lamiacategoria/dettagli/pagina.html

www.miosito.it/cartella2/lamiacategoria/dettagli/pagina2.html

www.miosito.it/cartella3/lamiacategoria/dettagli/pagina3.html
dovrebbero diventare

www.miosito.it/nuovacartella/123-lamiacategoria/dettagli/pagina.html

www.miosito.it/nuovacartella/123-lamiacategoria/dettagli/pagina2.html

www.miosito.it/nuovacartella/123-lamiacategoria/dettagli/pagina3.html


quindi avrei bisogno di una regola che trova all'interno dell'url una determinata cartella... rinomina la cartella ( o le cartelle ) prima, e rimane invariato il dopo... è possibile??
« Ultima modifica: 19 Nov 2019, 21:00:15 da massikk »

Offline marine

  • Team Joomla.it
  • Instancabile
  • *******
  • Post: 5913
  • Sesso: Maschio
    • Mostra profilo
Re:Regola HTACCESS particolare
« Risposta #1 il: 17 Nov 2019, 19:55:54 »
2 cose:
1) un titolo esplicativo
2) l'ultima ringa non si legge
per cortesia modifica il titolo e fai in modo che tutto sia leggibile, grazie della collaborazione.

Offline massikk

  • Esploratore
  • **
  • Post: 88
    • Mostra profilo
Re:redirect di una cartella ad un altra
« Risposta #2 il: 18 Nov 2019, 01:21:54 »
titolo modificato.. adesso posto la soluzione che forse ho trovato scervellandomi e cercando in qua e la :D



# Questa regola dice che quando la base è giusta non deve eseguire il redirect, senza questa regola il browser da errore perchè creeremmo un loop infinito


RewriteRule ^(sottocat/CATEGORIA)($|/) - [L]


# Questa regola cerca tutte le cartelle CATEGORIA/detail/ che hanno un'altra cartella che le precede ed esegue un redirect 301 a quella giusta


RewriteRule ^/?([^/]+)/CATEGORIA/detail/(.*) https://www.miosito.com/sottocat/CATEGORIA/detail/$2 [R=301,NC,L]

# Questa regola cerca tutte le cartelle CATEGORIA/detail/ che hanno due cartelle che le precedono ed esegue un redirect 301 a quella giusta

RewriteRule ^/?([^/]+)/?([^/]+)/CATEGORIA/detail/(.*) https://www.miosito.com/sottocat/CATEGORIA/detail/$3 [R=301,NC,L]


Adesso aspetto di vedere se il componente redirect non mi da più migliaia di errori.. ma penso funzioni

Offline massikk

  • Esploratore
  • **
  • Post: 88
    • Mostra profilo
Re:redirect di una cartella ad un altra
« Risposta #3 il: 19 Nov 2019, 18:39:26 »
Correggo per una regola ancora migliore... la prima regola va eliminata e sostituita con la seguente, che andrà ripetuta anche prima della seconda regola.
In pratica invece di escludere da qualsiasi redirect e rewrtie sottocat/CATEGORIA/ e file annessi, dice che esclude quelle cartelle e i suoi file solo dalla regola che segue.




RewriteCond %{REQUEST_URI} !^/sottocat/CATEGORIA/(.*)


Nel mio caso, quindi usando queste regole per phocagallery, con la regola che avevo detto in precedenza funzionava tutto ma non mi permetteva i download delle immagini ( pagina?phocadownload=2 ), appunto perchè escludevo l'intera categoria dal rewrite... adesso che invece la categoria l'ho esclusa solo dalla singola regola funziona tutto egregiamente!

Offline marine

  • Team Joomla.it
  • Instancabile
  • *******
  • Post: 5913
  • Sesso: Maschio
    • Mostra profilo
Re:redirect di una cartella ad un altra
« Risposta #4 il: 19 Nov 2019, 19:16:45 »
ricordati il [RISOLTO] per cortesia

Offline massikk

  • Esploratore
  • **
  • Post: 88
    • Mostra profilo
Re:[RISOLTO] redirect di una cartella ad un altra
« Risposta #5 il: 19 Nov 2019, 21:04:23 »
Messo il risolto  ;)
Ti chiedo solo una cosa se sai rispondermi, ci sono consigli sulla lunghezza del file htaccess?
Il mio adesso contiene 1715 righe (purtroppo avendo fatto un casino con joomla 1.5 e avendo inserito un centinaio di voci di menu erano necessarie tutte queste regole affinchè non ci fossero pagine 404).. il sito non ha rallentamenti ed anche con i test online si apre molto velocemente, però non so se ci sono delle linee guida da seguire per non appesantire troppo l'htaccess...

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 31468
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:[RISOLTO] redirect di una cartella ad un altra
« Risposta #6 il: 19 Nov 2019, 21:11:26 »
@massikk


Non dimenticarti mai la regola di un post, una richiesta, quindi per altre richieste apri sempre un nuovo post, questo aiuta a usufruire meglio il forum e tenerlo ordinato per le ricerche.

 

Host

Torna su