27 messaggi dal 27 giugno 2008
ciao a tutti, mi domandavo se era possibile, al momento di un download di un file da un link, capire se questo file esiste realmente sul server.Se non esiste invece di dare pagina di errore,dare un messaggio di errore,dando la possibilità di segnalare il file mancante. Qualcuno sa aiutarmi ?
156 messaggi dal 01 dicembre 2010
Prova a copiare nel file Web.config nella sezione SistemWeb il codice scritto qui sotto.

Per errore 403 ti manda al form zE403 ( che devi creare appositamente.
Per errore 404 ti manda al form .............
Per tutti gli altri errori ti manda al form zEGen ( che devi creare appositamente )




<customErrors mode="RemoteOnly" defaultRedirect="zEGen.aspx">
<error statusCode="403" redirect="zE403.aspx"/>
<error statusCode="404" redirect="zE404.aspx"/>
<error statusCode="410" redirect="zE410.aspx"/>
<error statusCode="500" redirect="zE500.aspx"/>
</customErrors>
156 messaggi dal 01 dicembre 2010
Quando lanci un download e manca il file ti da una pagina di errore che sembra generica ma c'e scritto il numero di errore che mi sembra sia 404 o 405 cosi saprai il tipo di errore che devi reindirizzare al form appositamente creato
94 messaggi dal 22 marzo 2009
quando richiedi una risorsa al web server sia che sia una pagina web o un file per esempio .rar il tutto è gestito dal protocollo http.

se il file non è presente sul server, il protocollo genera un codice di errore 404 potresti gestirlo con una richiesta del genere

HttpWebRequest request = (HttpWebRequest)WebRequest.Create([Url da controllare]);

e catturare l'eccezione generata per l'errore 404

cmq consiglio dal punto di vista della security non esporre mai al browser il reale path del file.....ci sono vari modi per effettuare un download sicuro del file....tra l'altro il .net 4.0 ha introdotto il cosiddetto URL Remoting per web form dove tu puoi mappare le tue directory reali con un percorso virtuale offrendo sia sicurezza che un pò di SEO
94 messaggi dal 22 marzo 2009
scusami URL routing........

sono un pò stanco :-)
27 messaggi dal 27 giugno 2008
grazie a tutti per le risposte, ma non riesco a fare funzionare questo custo error per l errore 404

<customErrors mode="RemoteOnly" defaultRedirect="default.aspx">
<error statusCode="403" redirect="default.aspx"/>
<error statusCode="404" redirect="default.aspx"/>
<error statusCode="410" redirect="default.aspx"/>
<error statusCode="500" redirect="default.aspx"/>
</customErrors>

mi da comunque il seguente errore:

The page cannot be found

The page you are looking for might have been removed, had its name changed, or is temporarily unavailable.
Please try the following:

Make sure that the Web site address displayed in the address bar of your browser is spelled and formatted correctly.
If you reached this page by clicking a link, contact the Web site administrator to alert them that the link is incorrectly formatted.
Click the Back button to try another link.
HTTP Error 404 - File or directory not found.
Internet Information Services (IIS)

Technical Information (for support personnel)

Go to Microsoft Product Support Services and perform a title search for the words HTTP and 404.
Open IIS Help, which is accessible in IIS Manager (inetmgr), and search for topics titled Web Site Setup, Common Administrative Tasks, and About Custom Error Messages.
controlla che il file a cui stai facendo il redirect in caso di errore ( nel tuo codice è default.aspx ) esista effettivamente. Magari fai un test con un url completo :)

Davide Guida
Technical Architect @ Razorfish Healthware
http://davideguida.altervista.org
IMHO ti consiglierei di gestire i download con un httpHandler a cui passi un parametro per risalire al file (un id, il filename, qualunque cosa).

In questo modo non esponi il path diretto del file e soprattutto puoi controllare lato server l'effettiva esistenza. In caso di errore così puoi gestire come ti pare gli eventuali messaggi da restituire :)

Davide Guida
Technical Architect @ Razorfish Healthware
http://davideguida.altervista.org

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.