33 messaggi dal 11 giugno 2003
Ciao a tutti.
ho il seguente problema :
ho scritto il codice per un sito dove i link vengono determinati tramite il rewriting degli url..
in locale il sito mi funziona perfettamente ma quando lo pubblico sul server remoto non mi prende gli url ....
ma bisogna configurare qualcosa sul server ?
vi prego aiuto.
grazie anticipatamente
Ciao, difficile dare una risposta. Gli elementi sono troppo pochi per fare una "diagnosi".

> Come hai scitto l'Handler ?
> Piano hosting (con chi?) o server tuo ?

Fabrizio Canevali
33 messaggi dal 11 giugno 2003
ciao, il server è mio.
per l'handler ti allego il codice del file web.config di seguito.

_________________________________________________________________________
<?xml version="1.0"?>
<configuration>


<configSections>
<sectionGroup name="mod_rewrite">
<section name="simple_rules" type="System.Configuration.NameValueSectionHandler" />
<section name="regex_rules" type="System.Configuration.NameValueSectionHandler" />
</sectionGroup>
</configSections>

<mod_rewrite>
<simple_rules>
<add key="/RewriteTestVB/Home/" value="/RewriteTestVB/Default.aspx?tab=Home" />
<add key="/RewriteTestVB/Home" value="/RewriteTestVB/Default.aspx?tab=Home" />
<add key="/RewriteTestVB/ChiSiamo/" value="/RewriteTestVB/Default.aspx?tab=ChiSiamo" />
<add key="/RewriteTestVB/ChiSiamo" value="/RewriteTestVB/Default.aspx?tab=ChiSiamo" />
<add key="/RewriteTestVB/DoveSiamo/" value="/RewriteTestVB/Default.aspx?tab=DoveSiamo" />
<add key="/RewriteTestVB/DoveSiamo" value="/RewriteTestVB/Default.aspx?tab=DoveSiamo" />
<add key="/RewriteTestVB/Contattaci/" value="/RewriteTestVB/Default.aspx?tab=Contattaci" />
<add key="/RewriteTestVB/Contattaci" value="/RewriteTestVB/Default.aspx?tab=Contattaci" />
<add key="/RewriteTestVB/Categorie/" value="/RewriteTestVB/Categorie.aspx" />
<add key="/RewriteTestVB/Categorie" value="/RewriteTestVB/Categorie.aspx" />
</simple_rules>

<regex_rules>
<add key="/RewriteTestVB/Sottocategorie/(.*)/" value="/RewriteTestVB/Sottocategorie.aspx?cat=$1" />
<add key="/RewriteTestVB/Sottocategorie/(.*)" value="/RewriteTestVB/Sottocategorie.aspx?cat=$1" />
<add key="/RewriteTestVB/Prodotti/(.*)/(.*)/" value="/RewriteTestVB/Prodotti.aspx?cat=$1&amp;scat=$2" />
<add key="/RewriteTestVB/Prodotti/(.*)/(.*)" value="/RewriteTestVB/Prodotti.aspx?cat=$1&amp;scat=$2" />
<add key="/RewriteTestVB/DettagliProdotto/(.*)/" value="/RewriteTestVB/DettagliProdotto.aspx?pro=$1" />
<add key="/RewriteTestVB/DettagliProdotto/(.*)" value="/RewriteTestVB/DettagliProdotto.aspx?pro=$1" />
</regex_rules>
</mod_rewrite>
<connectionStrings>
<add name="Accesso" connectionString="Provider=Microsoft.Jet.Oledb.4.0;Data Source=|DataDirectory|db.mdb" providerName="System.Data.OleDb"/>
</connectionStrings>

<appSettings></appSettings>
<system.web>
<compilation debug="true" />
<authentication mode="Forms" />

<httpModules>
<add type="mod_rewrite_vb.rewriter,mod_rewrite_vb" name="mod_rewrite_vb" />
</httpModules>
</system.web>
</configuration>
_________________________________________________________________________

ciao e grazie
patrix ha scritto:
in locale il sito mi funziona perfettamente

Immagino funzioni usando il web server integrato in visual studio, non con IIS; infatti gli url che vuoi riscrivere sono relativi a percorsi generici (es: "/RewriteTestVB/Home/") e non ad un content mappato su ASP.NET (es: "/RewriteTestVB/Home/default.aspx")
O cambi la regola di url rewriting specificando una pagina .aspx oppure configuri IIS affinché faccia processare *tutto* ad ASP.NET (che è quello che fa il WS di VS)
HTH

Matteo Casati
GURU4.net
33 messaggi dal 11 giugno 2003
ciao ,
è appunto questo che vorrei fare .
vorrei far processare tutto ad asp.net ma non so come configurare iis ....
patrix ha scritto:
non so come configurare iis ....


Posto direttamente il capitolo corrispondente dalla documentazione (che trovi all'indirizzo: http://www.urlrewriting.net/160/en/documentation.html) di UrlRewriting.net - un ottimo modulo di url rewriting per ASP.NET 2.0 con supporto di Regex:

Assign other file extensions with ASP.NET 2.0

IIS 5.0/5.1
IIS 6.0
Open the IIS Manager tool, select the web which you want to configure and open the settings menu. Select register "Home Directory", go to "Application settings" and click on "Configuration". Here you can add additional file extensions or map existing extensions to ASP.NET under register "Mappings" with the following settings

Executable: c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll (can vary by installation)
Extension: .html (Sample for.html)
Verbs, Limit to: GET,HEAD,POST,DEBUG
Script engine: check
Verify that file exist: check off


Handle all requests by ASP.NET 2.0

IIS 5.0/5.1
Handle all requests with placeholder *.* by aspnet_isapi.dll.

IIS 6.0
With IIS 6 you can't handle *.* requests, but you can assign an ISAPI filter as an application placeholder (Wildcard application maps).For it you have to follow the steps described on page 14, but not adding a file extension under "Wildcard application maps", but "c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll".
Do not check "verify that file exists"!


La procedura è descritta anche da ScottGu: http://weblogs.asp.net/scottgu/archive/2007/03/04/tip-trick-integrating-asp-net-security-with-classic-asp-and-non-asp-net-urls.aspx

Un'unica nota: attenzione a mappare *tutto* sul filtro isapi di asp.net (potrebbe avere un considerevole impatto sulle performance); in alternativa puoi utilizzare la pagina 404 ma è un po' un accrocchio.


HTH
Modificato da m.casati il 04 luglio 2008 14.44 -

Matteo Casati
GURU4.net
33 messaggi dal 11 giugno 2003
tutto risolto
grazie mille per il vostro aiuto

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.