Visualizzazione risultati 1 fino 10 di 10

Discussione: Modifica di .htaccess non produce risultati.

  1. #1
    exphp non è connesso Neofita
    Data registrazione
    05-06-2015
    Messaggi
    25

    Predefinito Modifica di .htaccess non produce risultati.

    Buonasera, sul mio spazio hosting ho impostato il file .htaccess nel modo illustrato qui sotto, ma non ottengo nessun risultato. Ci potrebbe essere un errore di sintassi, oppure un problema del server? Grazie.

    Codice:
    # # av:php5-engine
    AddHandler av-php56 .php
    RewriteEngine On
    RewriteRule ^([^/]*)\.html$ /index.php?url=$1 [L]
    Ultima modifica di karl94 : 06-05-2016 alle ore 02.03.15 Motivo: Formattazione

  2. #2
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Aggiungi la direttiva
    Codice:
    RewriteBase /

  3. #3
    exphp non è connesso Neofita
    Data registrazione
    05-06-2015
    Messaggi
    25

    Predefinito

    Grazie, ho aggiunto la direttiva, ma mi da sempre 404

    Codice:
    # # av:php5-engine
    AddHandler av-php56 .php
    RewriteEngine On
    RewriteBase /
    RewriteRule ^([^/]*)\.html$ /index.php?url=$1 [L]
    Ultima modifica di exphp : 06-05-2016 alle ore 16.57.37

  4. #4
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Ma in che cartella stai lavorando di preciso? Assicurati anche di vuotare la cache del browser.

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

    Predefinito

    Secondo il tuo ragionamento, il browser si collega ha http://exphp.altervista.org/pagina.html è il server dovrebbe inoltrare questa url in /index.php?url=pagina.
    Non hai bisogno di un redirect (cambio di url nel browser) ma devi passare il contenuto di pagina.html nel /proxy.php?url=pagina.html (la pagina index.php lasciala perdere è crei la index.html).
    Questo file .htaccess è posizionato nella cartella principale come anche i file html valutabili da passare tramite url al proxy.php
    Codice:
    RewriteEngine On
    RewriteBase "/"
    RewriteCond "%{REQUEST_URI}" "!!/$1"
    RewriteRule "^([^/]+\.html)\??" "/proxy\.php?url=$1" [L,PT]
    Con RewriteRule "^([^/]+\.html)\??" "/index\.php?url=$1" [L,PT] sto indicando che la stringa debba iniziare dal primo carattere è non può esserci lo slash ed è seguita da .html e un opzionale ? (query string). Mentre i flags di RewriteRule sono separati da una virgola PT in questo contesto è opzionale.
    file pagina.html
    Codice:
    ciao2
    codice proxy.php di esempio
    Codice PHP:
    <?php
    if(!empty($_GET['url'])){
    echo
    'ciao1<br>';
    echo
    file_get_contents($_GET['url']);
    }
    ?>
    Perché sarebbe normale salvare direttamente la pagina.html sul browser poiché è l'originale.
    Si potrebbe provare anche ad includere il file indicato con la funzione include di php
    Ultima modifica di darbula : 06-05-2016 alle ore 21.23.29

  6. #6
    exphp non è connesso Neofita
    Data registrazione
    05-06-2015
    Messaggi
    25

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    Ma in che cartella stai lavorando di preciso? Assicurati anche di vuotare la cache del browser.
    Il sito è in una sotto cartella, nella quale si trova anche il file .htaccess. Ho cancellato la cache e provato con diversi browser, ma nulla

  7. #7
    exphp non è connesso Neofita
    Data registrazione
    05-06-2015
    Messaggi
    25

    Predefinito

    Citazione Originalmente inviato da darbula Visualizza messaggio
    Secondo il tuo ragionamento, il browser si collega ha http://exphp.altervista.org/pagina.html è il server dovrebbe inoltrare questa url in /index.php?url=pagina.
    Non hai bisogno di un redirect (cambio di url nel browser) ma devi passare il contenuto di pagina.html nel /proxy.php?url=pagina.html (la pagina index.php lasciala perdere è crei la index.html).
    Questo file .htaccess è posizionato nella cartella principale come anche i file html valutabili da passare tramite url al proxy.php
    Codice:
    RewriteEngine On
    RewriteBase "/"
    RewriteCond "%{REQUEST_URI}" "!!/$1"
    RewriteRule "^([^/]+\.html)\??" "/proxy\.php?url=$1" [L,PT]
    Con RewriteRule "^([^/]+\.html)\??" "/index\.php?url=$1" [L,PT] sto indicando che la stringa debba iniziare dal primo carattere è non può esserci lo slash ed è seguita da .html e un opzionale ? (query string). Mentre i flags di RewriteRule sono separati da una virgola PT in questo contesto è opzionale.
    file pagina.html
    Codice:
    ciao2
    codice proxy.php di esempio
    Codice PHP:
    <?php
    if(!empty($_GET['url'])){
    echo
    'ciao1<br>';
    echo
    file_get_contents($_GET['url']);
    }
    ?>
    Perché sarebbe normale salvare direttamente la pagina.html sul browser poiché è l'originale.
    Si potrebbe provare anche ad includere il file indicato con la funzione include di php
    Io punto il browser su http://exphp.altervista.org/sottocartella/pagina.html e il web server processa in realtà l'url http://exphp.altervista.org/sottocar...php?url=pagina Questo sarebbe il mio intento. Il tuo suggerimento mira a questo? Grazie.

  8. #8
    L'avatar di darkwolf
    darkwolf non è connesso Super Moderatore
    Data registrazione
    18-04-2007
    Residenza
    Reggiolo (RE)
    Messaggi
    6,552

    Predefinito

    Questo htaccess dovrebbe fare quel che chiedi:
    Codice:
    RewriteEngine on
    RewriteBase /sottocartella 
    RewriteRule ^(.+)\.html$ index.php?url=$1 [L,QSA]
    Da aggiungere nell'htaccess della sottocartella.

    Saluti...
    » Salvatore Noschese - L'AltroWeb | Seguimi su: facebook | twitter | Google+
    # Che aspetti? Unisciti alla community! Tanti nuovi gruppi ti aspettano


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

    Predefinito

    file .htaccess per sotto cartella
    Codice:
    RewriteEngine On
    RewriteBase "/sottocartella/"
    RewriteCond "%{REQUEST_URI}" "!!/sottocartella/$1"
    RewriteRule "^([^/]+\.html)\??" "/sottocartella/proxy\.php?url=$1" [L,PT]
    In pratica da pagina.html viene processata dal webserver (proxy.php) Prova inserendo pagina.html e proxy.php se vedi ciao1 ti funziona.
    ps. recupero pagina.html è viene inviata a php. si deve adattare lo script per recuperare un valore diverso)
    Ultima modifica di darbula : 07-05-2016 alle ore 04.12.30

  10. #10
    exphp non è connesso Neofita
    Data registrazione
    05-06-2015
    Messaggi
    25

    Predefinito

    Buongiorno, era una questione di sottocartella, infatti appena ho aggiunto questo parametro, l'url con l'html funziona. Grazie a tutti, molto gentili.

Regole di scrittura

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