- Home
- Categorie
- La Community Connect.gt
- Tutto sulla Community
- Ottimizzare le Rewrite Rules
-
@sgnappo said:
Ora poichè molte di queste pagine già sono state indicizzate vorrei utilizzare le espressioni regolari (regex) per trasformare tutte le url che terminano con "_nu.html" in "_nutella.html".
Chi da gentilmente una mano a sgnappo?
Questo potrebbe essere di aiuto per tanti:)
-
@sgnappo said:
avrei necessità di fare una cosa del genere: ho notato che lo script che gestisce il rewrite (PHP) qundo trova la parola "nutella" scrive solo "nu".
Ad esempio "/snack/nutella/panino_con_nu.html"
Ora poichè molte di queste pagine già sono state indicizzate vorrei utilizzare le espressioni regolari (regex) per trasformare tutte le url che terminano con "_nu.html" in "_nutella.html".
Ciao sgnappo, ma il tuo portale che usa per fare quel tipo di url, un plugin che genera le pagine statiche o altro?
-
Ciao eLLeGi,
il sito utilizza un plugin per convertire le url del CMS in url di tipo statico. Non so come funziona esattamente...utilizza un DB per memorizzare le URL e il file .htaccess per il rewrite.
Lo script converte le URL sostituendole con /nome_sezione/nome_categoria/titolo_pagine.html
Il suo comportamento è soddisfacente tranne per alcune cose strane tipo che non completa la parola "nutella" (forse è allergico...mah!) e non inserisce la lettera 'z' se questa è presente nel titolo della pagina e viene dopo un '' (underscore) (es. pasta e zucca-->pasta_e_ucca.html)
Attualmente sto tamponando il problema andando a cambiare manualmente le URL nel DB.
Nelle mie esperienze di programmazone mi sono imbattuto spesso in espressioni regolari (complesse da comprendere )per il riconoscimento di stringhe...e pensavo di utilizzarle per l'URL_REWRITE in .htaccess...ma non so come fare.
Sarebbe pure una soluzione elegante e mi eviterebbe di fare debugging dello script per individuae il bug.
Ciao
Salvatore
-
come si chiama questo plugin? se è open magari si trova qualche info su come risolverlo in giro.
-
E' un plugin per l CMS Joomla e si chiama ARTIO Joomsef.
http://www.artio.cz/en/joomla-extensions/artio-joomsef
La versione che utilizzo è l'ultima e non mi pare che qualcuno abbia notificato questo problema...sul sito non vi è alcuna nota.
Mah!
-
ok, puoi verificare se nella tabella che utilizza, i nomi sono già troncati oppure se il problema avviene a livello di scrittura nell'htaccess?
-
Nel DB sono già troncate...il taglio avviene a livello di script...ma solo per "_nutella".
Sto cercando di capire come utilizzare l'istruzione RedirectMatch.
Dovrebbe essere una cosa del genere:
RedirectMatch 301 (.*_nu).htm$ http://www.dominio.it$1_nutella.html
Solo che nn so cosa mettere in $1 e se la sintassi è esatta...ho fatto diverse prove ma il server mi ha sempre risposto con un errore interno (500).
...appena risolvo vi faccio sapere
-
@sgnappo said:
Nel DB sono già troncate...il taglio avviene a livello di script...ma solo per "_nutella".
a me sembra che non sia la parola nutella il problema, ma la lunghezza globale dell'url.
-
No...ci sono altre URl più lunghe.
Pensavo anch'io alla lunghezza..così ho aumentato la dimensione della colonna nel DB...e controllato nello script se troncava da qualche parte...ma niente!
-
sgnappo forniresti per cortesia l'url come dovrebbe essere prima del rewrite e come appare dopo completo?
sia per nutella sia per le z nel title.
che codifica usi per i caratteri(utf-8, western, ...) su web server e quale su db?
utilizzi l'& al posto del solo & nella costruzione degli url dinamici?
queste sono le prime cose che mi sono venute in mente, spero di poterti aiutare.
ciao,
*M
-
Ciao marcuzzer,
- URL prima: index.php?option=com_content&task=view&id=26&Itemid=46
- URL dopo: nutella_che_passione/dolci_e_dolcetti_alla_nutella/cannoli_alla_nu.html
Ovviamente dovrebbe essere ".../cannoli_alla_nutella.html"
-
Il title è: "Cannoli alla Nutella" (sezione: "Nutella che Passione", categoria: "Dolci e Dolcetti alla Nutella")
-
Utilizzo &
-
La codifica dei campi nel DB è settata a "latin1_swedish_ci"
-
Sul server...come faccio il controllo???
Ciao
Salvatore
-
se usi apache puoi controllare quale charset di default e' presente nel file httpd.conf
In ogni caso per una prova "istantanea", in firefox puoi fare tasto destro (o mela+click) sulla pagina e scegliere "visualizza info pagina". A quel punto ti appare il charset con qui la pagina viene visualizzata. Nel caso fosse utf-8 ti consiglio di fare una prova e settare come utf-8 anche i campi del db e vedere se qualcosa cambia.Altre idee non me ne vengono in mente...
*M
-
ok,
la codifica è ISO-8859-1...solo che nella lista delle codifiche sul DB...ISO-8859-1 non c'è...quindi non posso allinearla.
-
lo sweedish case insensitive che usi va gia' bene, e' la stessa cosa con un nome diverso (alla gente piace dare nomi diversi per complicare la vita altrui).
scarterei quindi anche la possibilita' di errori di codifica. rimane un bel mistero. Cosa ti rispondono quelli della Artio? hai provato a contattare il loro supporto ed esporgli il tuo problema? sembrerebbe quasi un bug del plugin a questo punto.
facci sapere!
*M
-
Ciao
ho inviato una mail...ma attendo ancora una risposta.
Il problema è molto singolare!!!! Xchè solo con "nutella" e "_z"? Mah...che mistero!
Ciao e grazie
Salvatore
-
Ma hai provato OpenSef ? A me non ha dato nessun problema.
-
Si...l'ho provato...mi ha dato un casino di problemi durante la generazione della sitemap.
Creava dei loop..mah.