Visualizzazione risultati 1 fino 9 di 9

Discussione: Mod_Rewrite non va! Dove ho sbagliato?

  1. #1
    pwtng non è connesso Utente giovane
    Data registrazione
    15-01-2008
    Messaggi
    87

    Predefinito Mod_Rewrite non va! Dove ho sbagliato?

    Salve! Ho finalmente scoperto mod_rewrite, ma essendo una cosa nuova mi ritrovo giustamente ad avere problemi. Sono certo che sia una scemità, quindi spero possiate aiutarmi!

    Ho bisogno di trasformare il link "/index.php?subaction=showfull&id=1439583993" in "/index/showfull/1439583993.html". Seguendo una guida e un'altra guida ho quindi aggiunto al file .htaccess, dopo le cose già presenti, quello che segue:

    Codice:
    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^index/([^/]+)/([^/]+).html index.php?subaction=$1&id=$2 [L]
    Quando però scrivo il link "/index/showfull/1439583993.html" nel browser da errore 404. Perché non va? Dove ho sbagliato?
    Ultima modifica di pwtng : 17-08-2015 alle ore 10.02.30

  2. #2
    Guest

    Predefinito

    Citazione Originalmente inviato da pwtng Visualizza messaggio
    Salve! Ho finalmente scoperto mod_rewrite, ma essendo una cosa nuova mi ritrovo giustamente ad avere problemi. Sono certo che sia una scemità, quindi spero possiate aiutarmi!

    Ho bisogno di trasformare il link "/index.php?subaction=showfull&id=1439583993" in "/index/showfull/1439583993.html". Seguendo una guida e un'altra guida ho quindi aggiunto al file .htaccess, dopo le cose già presenti, quello che segue:

    Codice:
    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^index/([^/]+)/([^/]+).html index.php?subaction=$1&id=$2 [L]
    Quando però scrivo il link "/index/showfull/1439583993.html" nel browser da errore 404. Perché non va? Dove ho sbagliato?
    Prova a scrivere così

    Codice:
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index/([^/]+)/([^/]+).html$ index.php?subaction=$1&id=$2 [L]

  3. #3
    pwtng non è connesso Utente giovane
    Data registrazione
    15-01-2008
    Messaggi
    87

    Predefinito

    Provato, ma niente, non va ...è strano, xché notavo che anche sulla wiki dice la tua stessa cosa!

    Ma che stessi sbagliando qualcosa, tipo ho messo spazi che che creano problemi? (anche se mi sembra strano)
    Questo l'intero file .htaccess
    Codice:
    # # av:php5-engine
    AddHandler av-php53 .php
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index/([^/]+)/([^/]+).html$ index.php?subaction=$1&id=$2 [L]
    Ultima modifica di pwtng : 17-08-2015 alle ore 11.57.54

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da pwtng Visualizza messaggio
    Provato, ma niente, non va ...è strano, xché notavo che anche sulla wiki dice la tua stessa cosa!

    Ma che stessi sbagliando qualcosa, tipo ho messo spazi che che creano problemi? (anche se mi sembra strano)
    Questo l'intero file .htaccess
    Codice:
    # # av:php5-engine
    AddHandler av-php53 .php
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index/([^/]+)/([^/]+).html$ index.php?subaction=$1&id=$2 [L]
    prova invece così

    Codice:
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index/([^/]+)/([^/]+)\.html$ index.php?subaction=$1&id=$2 [L]
    Nota il backslash prima del punto dell'estenzione.
    Il punto è un carattere speciale (che vuol dire qualunque carattere). se vuoi che abbai un match prorpio col punto devi farlo precedere dalla barra rovesciata.

    Un'altra cosa, ma il file index.php dove si trova?

  5. #5
    pwtng non è connesso Utente giovane
    Data registrazione
    15-01-2008
    Messaggi
    87

    Predefinito

    Ok, quindi ora l'unica modifica è quella slash... grazie, provo e ti faccio sapere!
    l'index.php si trova nella cartella principale, per l'appunto in / ....quindi per essere precisi http://pwtng.altervista.org/index.php

  6. #6
    Guest

    Predefinito

    Guarda

    questo è l'.htaccess

    Codice:
    RewriteEngine On
    RewriteBase /lab/rewrite
    RewriteRule ^test/(.*)/(.*)$ index.php?page=$1&id=$2
    e puoi provare come funziona puntando a

    http://vplaza.altervista.org/lab/rew...ltro_contenuto

    Il RewriteBase è impostato in modo da lavorare su quella directory, impostato su / va su tutto il sito.
    Ultima modifica di vplaza : 17-08-2015 alle ore 12.42.43

  7. #7
    pwtng non è connesso Utente giovane
    Data registrazione
    15-01-2008
    Messaggi
    87

    Predefinito

    Allora... ho avuto l'idea di utilizzare ^test (come te) al posto di ^index ed è andato! Non so xché, ma index non gli piacere ^^ Grazie dell'aiuto!

  8. #8
    Guest

    Predefinito

    Vedi che test è una pezzoche mi serve per discriminare cosa riscrivere e cosa no.
    Nel caso dell'esempio, se scrivi

    vplaza.altervista.org/lab/rewrite/file.ext

    non si attiva la riscrittura, mentre se scrivi

    vplaza.altervista.org/lab/rewrite/test/parte1/parte2

    allora si attiva la riscrittura.

  9. #9
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Scusate ho provato con l'escape al primo punto è funziona.
    Codice:
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index/([^/]+)/([^/]+)\.html index.php?subaction=$1&id=$2 [L]
    Ultima modifica di darbula : 24-08-2015 alle ore 23.07.26 Motivo: aggiunto tag CODE

Regole di scrittura

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