2010-09-20 21 views
17

Quiero simular este error para poder comprobar que se muestra una página de error genérica, no la de HTTP 500, a la luz de la vulnerabilidad de seguridad reciente.¿Cómo simular un error HTTP 500 en mi aplicación ASP.NET?

Incluimos procesamiento especial en el sitio para 404 y 403, así que quiero asegurarme de que los errores sin procesamiento especial también funcionen.

Respuesta

26
throw new Exception(); 

Esto generará un HTTP 500

+0

Eso fue exactamente lo que voy a decir (: –

+1

Yo también :) ¡nos ganaron! –

+1

Muchas gracias, esto funcionó a la perfección. – ger

3

Creo que se puede hacer esto reemplazando la página de inicio y añadiendo el código 500 de estado a la respuesta como la siguiente:

protected void Page_Init(object sender, EventArgs e) 
{ 
    Response.Clear(); 
    Response.StatusCode = 500; 
    Response.End(); 
} 

disfrutar!

+1

conseguida StatusCode de 200 con el mensaje de error cuando se utiliza = banda nueva excepción() éxito reemplazando el código de estado directamente a través del código = Response.StatusCode = 500 –

+0

puedo usar este 'return new HttpStatusCodeResult (500);' – Unbreakable

-2

Esto genera un código de error http personalizado en asp clásico.

<%@language=Jscript%> 

<% 
    Response.Status = "996 TerraNova GeoWeb Internal Server Error"; 
    Response.End; 
%> 
0

puede romper el archivo web.config. Poner una etiqueta de malformados para las pruebas

0

He aquí una manera de hacer esto sin modificar su sitio de cualquier manera:

  1. desde el navegador Web, abra una página en su sitio que tiene una forma de devolución de datos.
  2. Presione F12 para abrir las herramientas del desarrollador.
  3. Desde la pestaña HTML, busque __VIEWSTATE y cambie el valor de cualquier manera.
  4. mensaje a la forma

Esto causará una "Validación del estado de vista MAC falló" Excepción ASP.Net, que devuelve un código de respuesta HTTP 500 error interno del servidor.

Romper la web.config con una etiqueta mal formada también funciona, pero no tiene sentido si intentas probar algunas configuraciones en tu web.config (como Falló el seguimiento de solicitudes).

+0

puedo usar 'return new HttpStatusCodeResult (500);' – Unbreakable

Cuestiones relacionadas