Visualizzazione risultati 1 fino 5 di 5

Discussione: La funzione RewriteRule non inserisce alcune parti dell'URL

  1. #1
    iocloudit non è connesso Neofita
    Data registrazione
    21-02-2019
    Messaggi
    8

    Predefinito La funzione RewriteRule non inserisce alcune parti dell'URL

    Ciao a tutti, chiedo il vostro aiuto per quanto riguarda un problema con il file htaccess.
    In pratica, negli URL finali ci sono dei pezzi mancanti.

    File htaccess:
    Codice:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ profile.php?u=$1 [L]
    L'URL finale dovrebbe essere: https://*********/IOsocial/u/profile.php?u=username
    Invece il risultato è questo: https://*******/IOsocial/u/username
    Come faccio a risolvere il problema?

    Spero mi possiate aiutare, grazie in anticipo!

  2. #2
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Rifletti sul significato di
    Codice:
    RewriteRule ^(.*)$ profile.php?u=$1 [L]
    il valore di u sarà "tutto quello che fa parte dell'URL" (ad eccezione di host e protocollo), quindi se l'URL è https://host/IOsocial/u/username è normale che l'URL sia riscritto come https://host/profile.php?u=IOsocial/u/username. Se non vuoi che IOsocial/u/ sia coinvolto nella riscrittura, indicalo nella regola:
    Codice:
    RewriteRule ^IOsocial\/u\/(.*)$ profile.php?u=$1 [L]

    I suggerimenti che do più spesso:


  3. #3
    iocloudit non è connesso Neofita
    Data registrazione
    21-02-2019
    Messaggi
    8

    Predefinito

    Citazione Originalmente inviato da mzanella Visualizza messaggio
    Rifletti sul significato di
    Codice:
    RewriteRule ^(.*)$ profile.php?u=$1 [L]
    il valore di u sarà "tutto quello che fa parte dell'URL" (ad eccezione di host e protocollo), quindi se l'URL è https://host/IOsocial/u/username è normale che l'URL sia riscritto come https://host/profile.php?u=IOsocial/u/username. Se non vuoi che IOsocial/u/ sia coinvolto nella riscrittura, indicalo nella regola:
    Codice:
    RewriteRule ^IOsocial\/u\/(.*)$ profile.php?u=$1 [L]
    Grazie per la risposta ma penso di essermi spiegato male, fino a IOsocial/u/ va bene il problema sta dopo, a me serve che la parte successiva sia questa: profile.php?u=username (dove username sarà il nome utente) ma al momento mi restituisce solo questa come parte successiva: username
    Ultima modifica di iocloudit : 02-05-2020 alle ore 15.54.25

  4. #4
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Hai impostato il rewrite base?
    Quanto al resto, forse intendi qualcosa del genere:
    Codice:
    RewriteRule ^IOsocial\/u\/(.*)$ IOsocial/u/profile.php?u=$1 [L]
    tramite cui URl come https://IOsocial/u/username sono trasformati in https://IOsocial/u/profile.php?u=username?

    I suggerimenti che do più spesso:


  5. #5
    iocloudit non è connesso Neofita
    Data registrazione
    21-02-2019
    Messaggi
    8

    Predefinito

    Citazione Originalmente inviato da mzanella Visualizza messaggio
    Hai impostato il rewrite base?
    Quanto al resto, forse intendi qualcosa del genere:
    Codice:
    RewriteRule ^IOsocial\/u\/(.*)$ IOsocial/u/profile.php?u=$1 [L]
    tramite cui URl come https://IOsocial/u/username sono trasformati in https://IOsocial/u/profile.php?u=username?
    Risolto, mancava il rewrite base, ora funziona, grazie mille!
    Comunque a scopo informativo a me serviva così https://IOsocial/u/profile.php?u=username ma ottenevo questo https://IOsocial/u/username
    Ultima modifica di iocloudit : 02-05-2020 alle ore 22.54.20

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •