Salve a tutti.
Devo usare le tecniche di URL Rewriting per una applicazione .net; vorrei essere contattato da chi ne ha già avuto esperienza. Grazie. Urgentissimo.
Salve a tutti.
Devo usare le tecniche di URL Rewriting per una applicazione .net; vorrei essere contattato da chi ne ha già avuto esperienza. Grazie. Urgentissimo.
Ti ringrazio, albgen.
La questione credo sia trita e ritrita, ormai ... dico questo perché, sebbene sia alle prese con il problema da pochissimo tempo, ho avuto modo di leggere diverse cose a proposito.
Ho una applicazione .net che usa Global.asax per gestire l'url rewriting, in questo modo:
=======================================
void Application_BeginRequest(object sender, EventArgs e)
{
HttpContext incoming = HttpContext.Current;
string prevpath = incoming.Request.Path.ToLower();
string prevrawpath = incoming.Request.RawUrl.ToLower();
string pageid; // page id requested
string[] sParameters = prevrawpath.Substring(prevrawpath.LastIndexOf("?") + 1).Split('|');
............. (faccio delle cose)
if(prevrawpath.Contains("mymessages"))
{
if(sParameters.Length == 1) {
incoming.RewritePath("messages.aspx?id=" + sParameters[0], true);
} else if(sParameters.Length == 3) {
incoming.RewritePath("mymessages.aspx?id=" + sParameters[0] +"&idMessage=" + sParameters[1] + "&sOperation=" + sParameters[2], true);
}
}
............. (faccio delle cose)
if (prevpath.Contains("index")) incoming.RewritePath("index.aspx");
if (prevpath.Contains("signin")) incoming.RewritePath("signin.aspx");
if (prevpath.Contains("faq")) incoming.RewritePath("faq.aspx");
............. (faccio delle cose)
=======================================
Gli href sparsi per l'applicazione sono dunque (ad esempio):
entra
In localhost tutto funziona, ma non presso il nuovo provider hosting (goDaddy). Un link che rimanda a
http://www.mywebsite/login
restituisce l'errore "risorsa non trovata".
Sto provando ad usare UrlRewritingNet, trasferendo il rewriting degli indirizzi da Global.asax al WebConfig .... ma non sono granché capace ...
Ora: devo riuscire a capire se il problema risiede nella errata costruzione delle regular expression (che sto cominciando ad usare) che vorrei adottare oppure, più a monte, proprio nella scelta della soluzione. Riporto di seguito la soluzione UrlRewritingNet, che puoi comunque trovare a
http://www.developer.com/net/asp/article.php/3703901
===============================================
.............
<configSections>
<section name="urlrewritingnet" requirePermission ="false"
type="UrlRewritingNet.Configuration.UrlRewriteSect ion,
UrlRewritingNet.UrlRewriter" />
</configSections>
<system.web>
<compilation debug="true"/>
<authentication mode="Windows"/>
<httpModules>
<add name="UrlRewriteModule"
type="UrlRewritingNet.Web.UrlRewriteModule,
UrlRewritingNet.UrlRewriter" />
</httpModules>
</system.web>
...............
<urlrewritingnet
rewriteOnlyVirtualUrls="true"
contextItemsPrefix="QueryString"
defaultPage = "Default.aspx"
defaultProvider="RegEx"
xmlns="http://www.urlrewriting.net/schemas/config/2006/07" >
<rewrites>
<add name="UserAccount"
virtualUrl="^~/UserAccountV2/(.+).aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/UserAccountV2.aspx?id=$1"
ignoreCase="true" />
<add name="Movies_Action"
virtualUrl="^~/Movies/Action.aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/Movies.aspx?MovieType=Action"
ignoreCase="true" />
<add name="Movies_Drama"
virtualUrl="^~/Movies/Drama.aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/Movies.aspx?MovieType=Drama"
ignoreCase="true" />
<add name="Movies_Comedy"
virtualUrl="^~/Movies/Comedy.aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/Movies.aspx?MovieType=Comedy"
ignoreCase="true" />
</rewrites>
</urlrewritingnet>
===============================================
Alla fine, insomma, vorrei riuscire ad inviare i link come
href="login"
alla pagina
www.mywebsite.net/login.aspx
E, inoltre, a gestire link con parametri, del tipo:
href="mymessages|chisono|tipomessaggi|destinatario "
alla pagina
http://www.mywebsite.net/mymessages....tti&dest=mario
... sempre che la scelta dlla soluzione UrlRewritingNet sia giusta...
Puoi supportarmi in questo? GRAZIE.
mmm, forse il problema e' che il tuo contenuto e' configurato come una virtual directory, e non come una WEB APPLICATION. prova a verificare questo!
se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)
Salve a tutti,
spero di postare nella sezione giusta.
Ho un sito in asp net e vorrei fare il rewriting.
C'è qualcuno che offre questo servizio?
Grazie
Saluti
Ma quale framework usi ? 2.0 , 3.5 0 il 4.0 ?
Col il 4.0 è molto semplice.
Comunque per gli altri framework dovresti usare un http handler (.ashx )
Se mi dici quale framework usi posso darti una mano.
Sul mio blog qualche utile risorsa per JQuery, HTML5 , CSS3 , PHP , ASP.NET , WCF SERVICE REST & SOAP ed altro ancora http://zannino1973.wordpress.com
dovrebbe essere 3.5.
Potresti aiutarmi??
grazie
@ilcommer: URL Rewriting non significa riscrivere un sito in una versione diversa del framework.
E' un'altra cosa....![]()
press play on tape
-----
MP3 Listing
https://sourceforge.net/projects/mp3-listing
File Listing
https://sourceforge.net/projects/file-listing-2-0/