Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di asch
    Registrato dal
    Aug 2002
    Messaggi
    365

    Rewrite rules in web config

    Ciao a tutti,
    ho questo link
    lista2.asp?CatID=2&subCateg=3&Lang=IT&item=auto-acciaio

    se inserisco nel web.config

    Codice PHP:
    <configuration>
        <
    system.webServer>
            <
    rewrite>
                <
    rules>
                  
                  <
    rule name="lista2 1">
                    <
    match url="^lista2\.asp(.*)" ignoreCase="true" />
                    <
    conditions logicalGrouping="MatchAll">
                      <
    add input="{QUERY_STRING}" pattern="^(.*)CatID=([0-9]+)&amp;subCateg=(.*)&amp;Lang=(.*)&amp;item=(.*)" ignoreCase="true" />
                    </
    conditions>
                    <
    action type="Redirect" url="{C:5}-lista_{C:2}_{C:3}_{C:4}.html" appendQueryString="false" />
                  </
    rule>

                  <
    rule name="lista2 2" stopProcessing="true">
                    <
    match url="^(.*)-lista_([0-9]+)_([0-9]+)(.*)\.html" ignoreCase="true" />
                    <
    action type="Rewrite" url="lista2.asp?CatID={R:1}&amp;subCateg={R:2}&amp;Lang={R:3}&amp;item={R:4}" appendQueryString="false" />
                  </
    rule

                  
                </
    rules>
            </
    rewrite>        
        </
    system.webServer>
    </
    configuration
    e clicclo il link ho: auto-acciaio-lista_2_3_IT.html che va bene come riscrittura ma ho errore 404 pagina non trovata.

    Vedete l'errore?
    Ultima modifica di asch; 15-04-2015 a 20:07
    ...............
    :::::ILNY::::::
    °°°°°°°°°°°°°°°

  2. #2
    Utente di HTML.it L'avatar di asch
    Registrato dal
    Aug 2002
    Messaggi
    365
    Scusate appena posato ho trovato l'errore, ora è ok se a qualcuno può servire.
    ...............
    :::::ILNY::::::
    °°°°°°°°°°°°°°°

  3. #3
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,658
    se non si tratta di un errore di ortografia, certo che interessa

  4. #4
    Utente di HTML.it L'avatar di asch
    Registrato dal
    Aug 2002
    Messaggi
    365
    c'era ancora un errorino, sostituite la riga sopra con questa:
    Codice PHP:
    <action type="Rewrite" url="lista2.asp?CatID={R:2}&amp;subCateg={R:3}&amp;Lang={R:4}&amp;item={R:1}" appendQueryString="false" /> 
    ...............
    :::::ILNY::::::
    °°°°°°°°°°°°°°°

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    464
    scusa ci sarebbe una breve guida semplice da seguire per configurare la stessa cosa che hai fatto tu? (oppure s enon ti chiedo troppo me lo spieghi in 2 passi cosa e come fare.
    vorrei fare un rewriting di pagine asp, ho letto un sacco di cose ma piuttosto complicate. Da come ne parli tu sembra non sia così difficile.
    Il mio provider mi ha detto che posso collegarmi al mio spazio web via IIS ed impostare il tutto in ASP.NET (ho letto un sacco di cose ma ho un po di confusione in testa)
    Grazie
    F

  6. #6
    Utente di HTML.it L'avatar di asch
    Registrato dal
    Aug 2002
    Messaggi
    365
    Ciao,
    mi dispiace ma non ho trovato quide al riguardo. Ho guardato come ha fatto bruce con newspad e ho cercato di capire. https://www.webwiz.co.uk/web-wiz-newspad/downloads.htm

    Cmq in riferimento al mio codice sopra:
    per test:
    1: crea una cartella vuota es: "cartellaTest"
    2: crea una pagina vuota con nome lista2.asp dentro la cartella "cartellaTest"
    3: crea un file web.config dentro la cartella "cartellaTest" e ci metti:

    Codice PHP:
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <rewrite>
                <rules>     
                 
                  <rule name="lista2 1">
                    <match url="^lista2\.asp(.*)" ignoreCase="true" />
                    <conditions logicalGrouping="MatchAll">
                      <add input="{QUERY_STRING}" pattern="^(.*)CatID=([0-9]+)&amp;subCateg=([0-9]+)&amp;lang=(.*)&amp;item=(.*)" ignoreCase="true" />
                    </conditions>
                    <action type="Redirect" url="{C:4}/{C:5}_{C:2}_{C:3}" appendQueryString="false" />
                  </rule>

                  <rule name="lista2 2" stopProcessing="true">
                    <match url="^(.*)/(.*)_([0-9]+)_([0-9]+)" ignoreCase="true" />
                    <action type="Rewrite" url="lista2.asp?CatID={R:3}&amp;subCateg={R:4}&amp;lang={R:1}&amp;item={R:2}" appendQueryString="false" />
                  </rule>
                              
                </rules>
            </rewrite>        
        </system.webServer>
    </configuration>
    Carica la cartella "cartellaTest" sul tuo sito e apri la pagina
    cartellaTest/lista2.asp?CatID=2&subCateg=3&Lang=IT&item=auto-acciaio

    Vedrai il risultato!
    cartellaTest/IT/auto-acciaio_2_3
    ...............
    :::::ILNY::::::
    °°°°°°°°°°°°°°°

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    464
    Grazie mille per la disponibilità, seguirò il tuo esempio ma prima vorrei sfruttare questo mezzo potentissimo. mi sono collegato al server windows 2008 e c'è la funzione url rewrite!
    Allego l'immagine, sembra sia fattibile ed anche facilmente ma non ho capito come. Qualcuno l'ha gia fatto per cortesia?
    Cattura2.JPG
    Immagini allegate Immagini allegate
    Ultima modifica di Partisan75; 11-05-2015 a 23:06

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    464
    Ciao Asch, grazie ancora per il tuo post.
    Ho seguito alla lettera le istruzioni, apre la pagina bianca ma non mi cambia il link il che mi fa pensare che su aruba c'è qualche altro tipo di restrizione/problema...
    Inoltre: newspad era solo un esempio vero? perche non l'ho scaricato ne fatto altro!
    Non so piu cosa altro leggere...
    Grazie in anticipo per un eventuale aiuto

    Dimenicato: L'assistenza aruba mi indicava questo sito per gli esempi ma non è molto chiaro almeno per me da dove cominciare: https://github.com/aspnetde/UrlRewritingNet
    Ultima modifica di Partisan75; 17-05-2015 a 16:43

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    97
    scusate se riprendo questa discussione, premetto che il tutto funziona a parte un piccolo problema, quando estraggo da un database un dato che invio alla pagina lista2.asp, e la variabile e composta da due parole tipo "auto acciaio" cioè con lo spazio, nell'url mi appare in questo modo
    cartellaTest/IT/ciao%20mondo_2_3 fin qui potrebbe anche andare, per modo di dire :-D, ma quando richiamo la variabile con il request.querystring per scriverla quella variabile diventa "autoacciaio", cioè in automatico mi elimina lo spazio, è un problema del web.config? ho provato a decodificare l'url per provare a fare un replace %20 con il '-', ma nulla, non mi cambia assolutamente nulla. dovrei intervenire sul web.config?

  10. #10
    Utente di HTML.it L'avatar di asch
    Registrato dal
    Aug 2002
    Messaggi
    365
    Ciao, devi avere la variabile senza spazi vuoti es. item=auto-acciaio
    Quindi crei una funzione/regola che ti crea il link con il dato del database senza spazi vuoti.

    esempio semplice:
    strInput = Replace(datoDelDatabase, " ", "-")

    item=<%=strInput%>
    ...............
    :::::ILNY::::::
    °°°°°°°°°°°°°°°

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 © 2024 vBulletin Solutions, Inc. All rights reserved.