Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Url rewriting

  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    Url rewriting

    Sto provando a seguire questa guida http://aspnet.html.it/articoli/leggi...-con-aspnet/1/
    Ho creato la classe mioRewrite.cs come a (pag3) ed eseguito la dichiarazione nel webconfig (come a pag4)

    Prima di procedere ho compilato e non ho errori. Però se cerco di visualizzare una qualsiasi pagina del sito ho questo errore:

    codice:
    Configuration Error 
    Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. 
    
    Parser Error Message: Could not load file or assembly 'mioRewrite' or one of its dependencies. Impossibile trovare il file specificato.
    
    Source Error: 
    
    
    Line 10:   <system.web>
    Line 11:     <httpHandlers>
    Line 12:       <add verb="*" path="news/*.aspx" type="mioRewrite, mioRewrite"/>
    Line 13:     </httpHandlers>
    Line 14: 
     
    
    Source File: c:\inetpub\wwwroot\ppp\web.config    Line: 12
    Specifico che la mia classe è dentro la cartella app-code

  2. #2
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    UP

  3. #3
    Utente di HTML.it L'avatar di Franz78
    Registrato dal
    Sep 2004
    Messaggi
    730
    hai provato a togliere il namespace dalla classe?

  4. #4
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    La mia classe è questa:

    codice:
    using System;
    using System.Web;
    using System.Web.UI;
    using System.IO;
    public class mioRewrite : IHttpHandlerFactory
    {
    
        public IHttpHandler GetHandler(HttpContext context, string requestType, string URL, string pathTranslated)
        {
            context.Items["fileName"] = Path.GetFileNameWithoutExtension(URL).ToLower();
    
            return PageParser.GetCompiledPageInstance(URL, context.Server.MapPath("viaggi.aspx"), context);
        }
    
        public void ReleaseHandler(IHttpHandler handler) { }
    }
    Non faccio riferimento al namespace.

  5. #5

  6. #6
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    non ho ben capito :master:
    Mettendo:
    codice:
        <httpModules>
            <remove name="mioRewrite" />
    
        </httpModules>
    nel mio web config comunque ho questo errore: Configuration Error
    Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

    Parser Error Message: There is no 'mioRewrite' module in the application to remove.

  7. #7
    Utente di HTML.it L'avatar di Franz78
    Registrato dal
    Sep 2004
    Messaggi
    730
    Cosi?:
    Line 10: <system.web>
    Line 11: <httpHandlers>
    Line 12: <add verb="*" path="news/*.aspx" type="mioRewrite"/>
    Line 13: </httpHandlers>

  8. #8
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Grazie problema 1 risolto!
    Adesso vedo correttamente le pagine del mio sito il problema che da questo link:
    codice:
    Voli per Madrid
    cliccando anzichè visualizzarmi la pagina viaggi.aspx ho l'errore:

    The resource cannot be found.
    Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.

  9. #9
    Utente di HTML.it L'avatar di Franz78
    Registrato dal
    Sep 2004
    Messaggi
    730
    Cerchi di accedere ad un file esterno o qualche fonte dati esterna?

  10. #10
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    nella mia pag viaggi.aspx visualizzo dei dati da un db ma se l'errore fosse nel mio codice della pag viaggi.aspx avrei un errore su quella pagina ma non dovrebbe dirmi che non la trova. Ad intuito il mio errore è più a monte.

    Premetto che il web config è cambiato in:

    codice:
     <httpHandlers>
     <add verb="*" path="viaggi/*.aspx" type="mioRewrite"/>
     
        </httpHandlers>
    e prima che avevo erroneamente messo news al posto di viaggi avevo lo stesso identico errore.

    per scrupolo copio la classe mioRewrite visto che l'errore mi viene segnalato sulla riga return PageParser.GetCompiledPageInstance...

    codice:
    using System;
    using System.Web;
    using System.Web.UI;
    using System.IO;
    public class mioRewrite : IHttpHandlerFactory
    {
    
        public IHttpHandler GetHandler(HttpContext context, string requestType, string URL, string pathTranslated)
        {
            context.Items["fileName"] = Path.GetFileNameWithoutExtension(URL).ToLower();
    
            return PageParser.GetCompiledPageInstance(URL, context.Server.MapPath("viaggi.aspx"), context);
        }
    
        public void ReleaseHandler(IHttpHandler handler) {
        }
    }
    Per togliersi ogni dubbio la mia pag viaggi .aspx al page load ora contiene solo
    codice:
            string qualePagina = this.Context.Items["fileName"].ToString();
            Response.Write(qualePagina);

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.