Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Procedura per URL rewriting? - PHP Apache

    Qualcuno conosce la procedura per eseguire un URL rewriting?

    Grazie.

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    La cosa è comunque complicata. Devi conoscere qualcosa delle espressioni regolari e leggere un po' di documentazione su htaccess (che è molto potente).
    Per questo esempio, il file .htaccess deve essere messo alla radice del sito. Stessa cosa per test439.php. Quindi da fare in un ambiente di prova. Gente più sveglia di me in parametrizzazione di htaccess potrà aiutarti per poter mettere gli script in altri posti.

    Nella pagina php ci sono 3 link diversi ma che riportano tutti alla pagina php. Ovviamente è solo un esempio e di sicuro non fa per te.

    File : test439.php
    Codice PHP:
    <?php
    $doc
    "";
    if (isset(
    $_GET['doc'])) {
     
    $doc $_GET['doc'];
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    Lo script è sempre test439.php<br/>
    <?php 
    if ($doc == '1') {
     print 
    "Regola applicata => RewriteRule ^chi_siamo\.html$  test439.php?doc=1 [L]<br/>";
     print 
    "Ma con doc = 1 è come se fosse chi_siamo.html";
    // if ($ident == '1')
    if ($doc == '2') {
     print 
    "Regola applicata => RewriteRule ^contatti\.html$  test439.php?doc=2 [L]<br/>";
     print 
    "Ma con doc = 2 è come se fosse contatti.html";
    // if ($ident == '2')
    if ($doc == '0000') {
     print 
    "Regola applicata => RewriteRule ^pagina([0-9]{4})\.html$  test439.php?doc=$1 [L]<br/>";
     print 
    "Ma con doc = 0000 è come se fosse pagina0000.html";

    ?>
    <br/>
    <a href="chi_siamo.html">Chi siamo</a><br/>
    <a href="contatti.html">Contatti</a><br/>
    <a href="pagina0000.html">Pagina 0000</a><br/>
    </body>
    </html>

    File .htaccess
    codice:
    Options +FollowSymlinks 
    RewriteEngine on  
    RewriteBase /
    RewriteRule ^chi_siamo\.html$  test439.php?doc=1 [L]
    RewriteRule ^contatti\.html$  test439.php?doc=2 [L]
    RewriteRule ^pagina([0-9]{4})\.html$  test439.php?doc=$1 [L]

    Quando il server vede l'URL chi_siamo.html la trasforma in test439.php?doc=1.
    Quando vede contatti.html la trasforma in test439.php?doc=2.
    Quando vede pagina0000.html la trasforma in test439.php?doc=0000 e se ci fosse pagina9876.html la trasformerebbe in test439.php?doc=9876.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    ok, ti ringrazio, me la studierò sicuramente!

    si, in realtà sapevo che si fa con le espressioni regolari, ma non le conosco. A questo riguardo, segnalo x tutti, un tutorial molto interessante e spiegato bene al link:

    http://www.mrwebmaster.it/php/espres...lari_6929.html

    sono 4 pagine scritte davvero bene.

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Attenzione. Con le nuovi versioni di php bisogna utilizzare le expressioni regolari PCRE. Quelle i cui comandi cominciano da preg.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

Tag per questa discussione

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.