Visualizzazione dei risultati da 1 a 10 su 10

Discussione: htaccess AIUTO

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    5

    htaccess AIUTO

    Ciao ragazzi,
    ho un problema con l'htaccess per il mio portale.


    Il problema è qui

    RewriteCond %{query_string} it/56/offerte-san-valentino.html
    RewriteRule ^(.*) http://www.vacanzecentrobenessere.it...valentino.html [R=301,L]


    il risultato di questo redirect è questo:
    http://www.vacanzecentrobenessere.it...valentino.html

    come vede mi mette alla fine dell'url la stringa che deve "essere rediretta": ?it/56/offerte-san-valentino.html

    c'è un modo per eliminarla??

    Grazie mille,
    Chiara

  2. #2
    Ciao,
    vedi se così funziona:
    codice:
    RewriteCond %{query_string} &?it/56/(offerte-san-valentino\.html)$
    RewriteRule ^(.*) /%1? [R=301,L]
    Full Stack Developer presso Advice Lab
    Bonus Bitcoin
    Moon Bitcoin

  3. #3
    RewriteCond% (query_string) it/56/offerte-san-valentino.html
    RewriteRule ^(.*) http://www.vacanzecentrobenessere.com/directory [R = 301, L]

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    5
    Ciao "magicale".
    allora questo
    RewriteCond %{query_string} &?it/56/(offerte-san-valentino\.html)$
    RewriteRule ^(.*) /%1? [R=301,L]



    funziona perchè va qui http://www.vacanzecentrobenessere.it...valentino.html

    il problema è che sto lavorando nell'htaccess di un cms che ha già delle direttive quindi non riconosce gli url fatti in questo modo http://www.vacanzecentrobenessere.it...valentino.html e mi va in 404.

    Secondo me la direttiva che da "fastidio" è questa RewriteRule ^(.*) index.php?$1

    ma non posso toccarla altrimenti va giù tutto il sito dovrei trovare qualcosa che si adatti .

    Quello che avevo postato io
    RewriteCond %{query_string} 56/offerte-san-valentino.html
    RewriteRule ^(.*) http://www.vacanzecentrobenessere.it...valentino.html [R=301,L]


    funzionava appunto a metà ma almeno il cms mi riconosceva la pagina....

    Riesci a darmi qualche altra dritta?
    Grazie mille,ciao
    Chiara

  5. #5
    Puoi postare l'htaccess completo?
    Full Stack Developer presso Advice Lab
    Bonus Bitcoin
    Moon Bitcoin

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    5
    Si, scusa.
    Eccolo


    <IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{query_string} page=56
    RewriteRule (.*) http://www.vacanzecentrobenessere.it...valentino.html$1? [R=301,L]


    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^(.+) - [PT,L]
    RewriteRule ^(.*) index.php?$1



    </IfModule>



    Allora questa funziona
    RewriteCond %{query_string} page=56
    RewriteRule (.*) http://www.vacanzecentrobenessere.it...valentino.html$1? [R=301,L]

    perchè questo url http://www.vacanzecentrobenessere.it...valentino.html
    esiste ed è riconosciuto quindi dal cms.
    Come dicevo prima questa
    RewriteCond %{query_string} it/56/offerte-san-valentino.html
    RewriteRule ^(.*) http://www.vacanzecentrobenessere.it...valentino.html [R=301,L]

    non funziona fino in fondo.

    Grazie mille, per me è molto importante riuscire a risolvere .
    Ciao,
    Chiara

  7. #7
    Non mi è ben chiaro cosa vuoi fare...

    Tu vuoi reindirizzare da un ipotetico indirizzo con http://www.vacanzecentrobenessere.it...valentino.html
    a:
    - http://www.vacanzecentrobenessere.it...valentino.html
    (che esiste a tutti gli effetti)
    oppure
    - http://www.vacanzecentrobenessere.it...valentino.html
    (che il tuo cms non riconosce perchè gli manca.. credo... il numero di pag/id)
    oppure che altro...?
    ?
    Full Stack Developer presso Advice Lab
    Bonus Bitcoin
    Moon Bitcoin

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    5
    Allora cerco di spiegarti:

    il cms parte con questo tipo di url

    http://www.vacanzecentrobenessere.it/?page=56


    Attivando l'url dinamico del css che è gestito da queste righe dell' htaccess + probabilmente del codice php che è intrinseco al cms:

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^(.+) - [PT,L]
    RewriteRule ^(.*) index.php?$1

    ottengo l'url attuale
    http://www.vacanzecentrobenessere.it...valentino.html (puoi anche vederlo online )

    Io voglio fare il redirect di questo http://www.vacanzecentrobenessere.it...valentino.html a un url generico che voglio io perchè secondo me è + user friendly
    tipo appunto questo http://www.vacanzecentrobenessere.it...alentino.html.
    In sostanza voglio togliere da questo url http://www.vacanzecentrobenessere.it...valentino.html le cartelle.

    E' + chiaro ora?
    Grazie mille dinuovo!
    Chiara

  9. #9
    Ora è chiaro... ma questo non puoi gestirlo dall'htaccess.. o meglio... non solo... buona parte del lavoro la fa il cms che stai usando.

    Questo perchè nell'url che ora a te sembra meno user-friendly è presente un numero (di pagina, di id, o quel che è...) che permette al tuo cms di sapere a quale risorsa si sta facendo riferimento e ne carica i contenuti.

    Quel numero, che vuoi far sparire è fondamentale per il funzionamento del cms. Tant'è che se provi a modificare l'url in /it/56/pincopallino vedrai che arriverai alla stessa pagina, perchè, appunto, è sul quel valore numerico che si basa il reperimento della pagina.

    Per ottenere quello che desideri occorrerebbe configurare/modificare il cms in modo che "sappia" che a "offerte-san-valentino.html" corrisponde la pagina/risorsa n. 56.
    Così otterresti il risultato da te cercato senza in teoria modificare il file .htaccess perchè gli url verrebbero generati dal cms nella forma che tu vuoi.

    Non so quale cms tu stia usando, ma, ad esempio, Drupal con il modulo pathauto ti permette una gestione di questo tipo.

    Alessandro
    Full Stack Developer presso Advice Lab
    Bonus Bitcoin
    Moon Bitcoin

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    5
    Esatto Alessandro, purtroppo questo lo avevo già intuito....ma dato che sono testarda vorrei cercare cmq di risolvere...può essere che non ci sia un modo?

    Ad esempio questo
    RewriteCond %{query_string} it/56/offerte-san-valentino.html
    RewriteRule (.*) http://www.vacanzecentrobenessere.it...valentino.html [R=301,L]


    come ti avevo scritto riconosce la pagina ma mi attacca la stringa da "redirigere" alla fine
    http://www.vacanzecentrobenessere.it...valentino.html

    Non c'è un modo ad esempio per nascondere questa stringa? In modo che insomma la veda il cms e quindi mi riconosca la pagina ma poi nel browser e quindi agli occhi del motore di ricerca non la veda.


    Oltre a questo sono riuscita ad arrivare ad un altro punto ossia questo:

    RewriteRule offerte-san-valentino.html page=56$1? [NC]
    RewriteRule offerte-san-valentino.html /it/56/offerte-san-valentino.html$1? [NC]

    con queste 2 righe funzionano cioè il cms riconosce tutte e 3 le pagine

    http://www.vacanzecentrobenessere.it/?page=56
    http://www.vacanzecentrobenessere.it...valentino.html
    http://www.vacanzecentrobenessere.it...valentino.html

    il problema è che le 2 vecchie non fanno redirect a quella che voglio io... appena cambio [NC] con [R=301,L] non funziona più nulla....

    Cosa ne pensi?
    Grazie mille, ciao
    Chiara

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.