Visualizzazione dei risultati da 1 a 7 su 7

Discussione: url rewriting

  1. #1

    url rewriting

    Ciao a tutti,

    sul mio sito mi serve riscrivere gli url come questo:

    www.miosito.it/scheda.php?id=72

    con il metodo dell'url rewriting, così ho inserito nel file .htaccess questo codice:


    code

    Options +FollowSymLinks
    RewriteEngine on
    RewriteBase /
    RewriteRule scheda/id/(.*)/ scheda.php?id=$1

    ma mi ritorna un problema di server (errore 500). L'errore scompare se tolgo "Options +FollowSymLinks", ma i links rimangono tali e quali!!! Potreste gentilmente aiutarmi?

    Il server è Ar*ba su hosting linux


  2. #2
    Provato a chiedere all'assistenza aruba? Da regolamento, non posso darti il consiglio che penso.

  3. #3
    Originariamente inviato da -UtèñtE-
    Provato a chiedere all'assistenza aruba? Da regolamento, non posso darti il consiglio che penso.
    Le loro risposte in questi casi si limitano a dire che la funzione è abilitata e funzionante, niente di più.. in ogni caso non mi hanno risposto

  4. #4
    L'errore in questi casi dipende da istruzioni sbagliate... prova così l'ultima riga:
    RewriteRule scheda/id/(.*)/?$ scheda.php?id=$1

    ... anche se personalmente ti consiglierei almeno qualcosa del tipo:
    RewriteRule scheda/scheda/(.*)/?$ scheda.php?id=$1
    oppure
    RewriteRule scheda/(.*)/?$ scheda.php?id=$1
    o meglio
    RewriteRule scheda/(.*)-([0-9]+)/?$ scheda.php?id=$2
    che l'ultima ti consente url del tipo "/chiavi_che_vuoi-idnumerico/" naturalmente cercando d'essere coerente e non creare url duplicati internamente.
    UtèñtE non ti dirà mai come trasformare l'argilla in marmo, ma se gli chiederai come progettare una simulazione con le bacche di mirto, ti risponderà: "Versane ancora!".

  5. #5
    Grazie mille ragazzi, ho risolto inserendo un "-" al posto di "/".. Probabilmete lo slash non è digerito da Aruba. Peccato perchè un url in stile sottodirectory è più carino.

    Già che ci sono vorrei fare un'altra domanda, anche se leggermente OT rispetto al 3d..

    Ho aggiunto all'url il nome dell'articolo relativo a quella scheda. In effetti però, non mi convince l'url così generato, in quanto sono presenti degli spazi (ad esempio: piatto decorato a mano).

    Esiste qualcosa da inserire sempre nel file .htaccess per evitare ciò oppure devo agire direttamente sul mio script php?

  6. #6
    Un - ? Hai seguito l'ultimo consiglio? Lo / lo puoi tenere ma se è terminale devi aggiungere ?$ che indica appunto che la stringa è finita.

    Quanto alla string del titolo, devi fare perlomeno un urlencode (ad esempio gli spazi li sostituirà con un %20), dopo un utf8_encode se vuoi compatibilità anche per la sitemap...
    ma visto che la stringa nel rewrite la butti via, ti conviene crearti una funzionzina che la ripulisca dai caratteri ostici (sostituendoli con dei _ o eliminandoli).
    Ovviamente tutto ciò lato php, quando costruisci i link interni alla pagina... con htaccess non c'è altro da fare.
    UtèñtE non ti dirà mai come trasformare l'argilla in marmo, ma se gli chiederai come progettare una simulazione con le bacche di mirto, ti risponderà: "Versane ancora!".

  7. #7
    -UtèñtE-, intanto ti ringrazio per i preziosi consigli e per la tua disponibilità, però non riesco a tenere gli /. Ho anche provato per quest'altra stringa che mi serve pure:

    RewriteRule catalogocompleto/page/(.*)/?$ catalogocompleto.php?page=$1

    ma niente, mentre funziona invece se uso "-"

    RewriteRule catalogo-page-(.*)\.htm$ catalogocompleto.php?page=$1

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.