2009-02-13 20 views

Respuesta

19

Una página vacía con esta cabecera debe hacer el truco:

<%@ Page Trace="true" Language="C#" 
    ContentType="text/html" ResponseEncoding="utf-8" %> 
1

¿Podría funcionar lo siguiente?

foreach (string Key in Request.ServerVariables.AllKeys) 
    Response.Write(Key + ": " + Request.ServerVariables[Key] + "<br>"); 

No estoy seguro de qué información phpinfo() escupe.

7

¿Qué le parece usar el subsistema de rastreo ASP.Net? Se le permite obtener:

Estructura del Control: Control de árbol presenta una representación HTML de la ASP.NET árbol de control. Muestra el ID de cada control, tipo de tiempo de ejecución, el número de bytes que tomó para representarse, y los bytes que requieren en Ver estado y control Estado.

Estado de sesión: enumera todas las claves para una sesión de usuario en particular, sus tipos y sus valores.

Estado de aplicación: Lista todas las teclas en objeto Aplicación de la aplicación actual y su tipo y valores.

Solicitud de cookies: enumera todas las cookies que se ingresaron durante la solicitud de la página .

Cookies de respuesta: enumera todas las cookies que se pasaron durante la respuesta de la página.

encabezados Colección: Muestra todos los cabeceras que puede ser pasada como durante la solicitud desde el navegador, incluyendo Accept-Encoding, lo que indica si el explorador admite las respuestas HTTP comprimidas y aceptar idiomas.

Recopilación de formularios: muestra un volcado completo de la colección de formularios y todas sus claves y valores .

Colección QueryString: muestra un volcado de la colección Querystring y todas sus claves y valores.

variables de servidor: un vaciado total de pares de nombre y valor de todo lo que el servidor web sabe acerca de la aplicación .

Ver here.

+0

El enlace de arriba ahora está roto –

12

http://code.google.com/p/aspnetsysinfo/

El proyecto es una ASP.Net Sistema de Información del probador. Es una sola página que trata de obtener la mayor cantidad posible de información de alojamiento útil. El concepto es similar a la página PHP que contiene phpinfo() ...

+0

Se bifurcó a GitHub: https://github.com/starlocke/aspnetsysinfo – starlocke

+0

Para obtener una salida más concisa, use 'System.Web.Helpers.ServerInfo.GetHtml()' como se indica aquí: http://stackoverflow.com/a/28654251/508823 – starlocke

7

ServerInfo.GetHtml() es básicamente lo mismo que phpinfo(). No solo la información real devuelta es muy similar, sino también la presentación html. Here is a live demo!


También se puede utilizar incluso si sólo está haciendo una aplicación Web API puro, pero dejando que devuelva un controlador de un HttpResponseMessage así:

public System.Net.Http.HttpResponseMessage Get() 
    { 
     var serverinfo = System.Web.Helpers.ServerInfo.GetHtml().ToHtmlString(); 
     var response = new System.Net.Http.HttpResponseMessage(); 
     response.Content = new System.Net.Http.StringContent("<html><body>" + serverinfo + "</body></html>"); 
     response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("text/html"); 
     return response; 
    } 
0

Para ASP clásico con VBScript (no ASP.net - ver descargo de responsabilidad a continuación) hay un Sub aspinfo() en Planet Source Code, al que he hecho cambios muy menores (moviendo la llamada al aspinfo() y moviendo el bloque superior de autoría/comentario).

Aquí está la fuente de mi versión modificada de Dennis Pallett's aspinfo(), que se puede guardar como aspinfo.asp en el servidor web en cuestión.

<%@ Language="VBSCRIPT" %> 
<% 

    '************************************** 
    ' Name: aspinfo() 
    ' Description:aspinfo() is the equivalent of phpinfo(). It displays all kinds of 
    '  information about the server, asp, cookies, sessions and several other things in 
    '  a neat table, properly formatted. 
    ' By: Dennis Pallett (from psc cd) 
    ' 
    ' 
    ' Inputs:None 
    ' 
    ' Returns:None 
    ' 
    'Assumes:You can include my code in any of your pages and call aspinfo() to show 
    '  the information of your server and asp. 
    ' 
    '************************************** 

Sub aspinfo() 
    Dim strVariable, strASPVersion 
    Dim strCookie, strKey, strSession 
    'Retrieve the version of ASP 
    strASPVersion = ScriptEngine & " Version " & ScriptEngineMajorVersion & "." & ScriptEngineMinorVersion 
%> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    <html> 
    <head> 
    <style type="text/css"><!-- 
    a { text-decoration: none; } 
    a:hover { text-decoration: underline; } 
    h1 { font-family: arial, helvetica, sans-serif; font-size: 18pt; font-weight: bold;} 
    h2 { font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold;} 
    body, td { font-family: arial, helvetica, sans-serif; font-size: 10pt; } 
    th { font-family: arial, helvetica, sans-serif; font-size: 10pt; font-weight: bold; } 
    //--></style> 
    <title>aspinfo()</title></head> 
    <body> 
    <div align="center"> 
    <table width="80%" border="0" bgcolor="#000000" cellspacing="1" cellpadding="3"> 
    <tr> 
     <td align="center" valign="top" bgcolor="#FFFFAE" align="left" colspan="2"> 
      <h3>ASP (<%= strASPVersion %>)</h3> 
     </td> 
    </tr> 
    </table> 
    <br> 
    <hr> 
    <br> 
    <h3>Server Variables</h3> 
    <table width="80%" border="0" bgcolor="#000000" cellspacing="1" cellpadding="3"> 
<% 
    For Each strVariable In Request.ServerVariables 
     Response.write("<tr>") 
     Response.write("<th width=""30%"" bgcolor=""#FFFFAE"" align=""left"">" & strVariable & "</th>") 
     Response.write("<td bgcolor=""#FFFFD9"" align=""left"">" & Request.ServerVariables(strVariable) & "&nbsp;</td>") 
     Response.write("</tr>") 
    Next 'strVariable 
%> 
    </table> 
    <br> 
    <hr> 
    <br> 
    <h3>Cookies</h3> 
    <table width="80%" border="0" bgcolor="#000000" cellspacing="1" cellpadding="3"> 
<% 
    For Each strCookie In Request.Cookies 
     If Not Request.Cookies(strCookie).HasKeys Then 
      Response.write("<tr>") 
      Response.write("<th width=""30%"" bgcolor=""#FFFFAE"" align=""left"">" & strCookie & "</th>") 
      Response.write("<td bgcolor=""#FFFFD9"" align=""left"">" & Request.Cookies(strCookie) & "&nbsp;</td>") 
      Response.write("</tr>") 
     Else 
      For Each strKey In Request.Cookies(strCookie) 
       Response.write("<tr>") 
       Response.write("<th width=""30%"" bgcolor=""#FFFFAE"" align=""left"">" & strCookie & "(" & strKey & ")</th>") 
       Response.write("<td bgcolor=""#FFFFD9"" align=""left"">" & Request.Cookies(strCookie)(strKey) & "&nbsp;</td>") 
       Response.write("</tr>") 
      Next 
     End If 
    Next 
%> 
    </table> 
    <br> 
    <hr> 
    <br> 
    <h3>Session Cookies</h3> 
    <table width="80%" border="0" bgcolor="#000000" cellspacing="1" cellpadding="3"> 
<% 
    For Each strSession In Session.Contents 
      Response.write("<tr>") 
      Response.write("<th width=""30%"" bgcolor=""#FFFFAE"" align=""left"">" & strSession & "</th>") 
      Response.write("<td bgcolor=""#FFFFD9"" align=""left"">" & Session(strSession) & "&nbsp;</td>") 
      Response.write("</tr>") 
    Next 
%> 
    </table> 
    <br> 
    <hr> 
    <br> 
    <h3>Other variables</h3> 
    <table width="80%" border="0" bgcolor="#000000" cellspacing="1" cellpadding="3"> 
    <tr><th width="30%" bgcolor="#FFFFAE" align="left">Session.sessionid</th><td bgcolor="#FFFFD9"><%= Session.sessionid %></td></tr> 
    <tr><th width="30%" bgcolor="#FFFFAE" align="left">Server.MapPath</th><td bgcolor="#FFFFD9"><%= Server.MapPath ("/") %></td></tr> 
    </table> 
    </div> 
    </body> 
    </html> 
<% 
End Sub 
aspinfo() 
%> 

de responsabilidad: Tenga en cuenta que este se presentó inicialmente como un edit-Rob's answer, pero se sugirió que se haga como una nueva respuesta de respuesta en vez. Tenga en cuenta también que, como frankadelic points out en un comentario a la respuesta de Rob, esta respuesta no aborda la pregunta del OP, ya que esa pregunta era para ASP.net, no ASP clásico.

0

Realicé una biblioteca simple para incluir en proyectos llamados InfoPage. Esta biblioteca muestra la información del sistema, el ensamblaje incluido en la aplicación, el número de compilación y los registros de cambios.

Simplemente puede incluirlo en su proyecto por nuget, es rápido de integrar y personalizable.

Cuestiones relacionadas