Recomendado: Conocimiento sobre objetos de error ASP avanzados para la aplicación ASP En VBScript, hay una instrucción OnerrorResumEnext que hace que el intérprete de script ignore los errores de tiempo de ejecución y continúe la ejecución del código de script. Luego, el script puede verificar el valor de la propiedad Err.Number para determinar si ocurrió un error. Si se produce un error, se devuelve un valor distinto de cero
4.2.3 Ejemplos de instrucciones que contienen el lado del servidor
Esta sección proporciona algunas páginas de muestra que se pueden usar para experimentar con varias declaraciones contenidas del lado del servidor. Abra el subdirectorio de la página web de muestra Capítulo04, que muestra las directivas SSI y la página de inicio del objeto ASP del servidor (es decir, default.asp en el capítulo del subdirectorio 04)
Todos los ejemplos de este libro se pueden descargar desde nuestro sitio web. Los lectores encontrarán todas las páginas de muestra para el resto de este capítulo en el Capítulo 04, el subdirectorio de ejemplo.
1. Use SSI/CGI para procesar las instrucciones
Haga clic en el enlace para ingresar a la página de declaraciones de incluido del lado del servidor y CGI, que abrirá la página SSI_CGI.STM. Cabe señalar que la extensión del archivo de esta página es .stm, lo que indica que esta no es una página web ASP. Esta página utiliza todas las instrucciones SSI, excepto la instrucción #Exec (que se verá más adelante) discutida anteriormente y muestra los métodos de uso y los resultados de las instrucciones, como se muestra en la Figura 4-4:
Figura 4-4 Instrucciones de procesamiento SSI/CGI que se muestran en la página web de ejemplo
(1) #NiClude Command
El comienzo de la página incluye archivos con SSI, muestra el contenido de otro archivo separado llamado Intro.InC. Aquí está el contenido completo del archivo:
Tenga en cuenta que debemos usar entradas HTML <y> para mostrar soportes de ángulo en la página web. Si no se realizan, no pueden tratarse como parte del elemento de anotación y hacer que las instrucciones se ejecuten.
En la página principal ssi_cgi.stm, el código para insertar este archivo en la página es muy simple:
<!-#include file = intro.inc->
(2) #config, #fsize y #FlastMod Directives
La siguiente parte de la página muestra el tamaño del archivo predeterminado.asp en el mismo directorio que la página y la última vez que se modificó. La directiva #config se usó tres veces aquí:
· Una vez es el mensaje de error SSI establecido.
· Una vez es el formato de fecha y hora.
· Establezca el formato de cálculo del tamaño de archivo.
Use las directivas #FSize y #FISTMOD para insertar el valor en la página web:
<p> <div class = subhead> SSI Declaraciones </div>
<!-#config errmsg = SSI Error de procesamiento->
(Establece un mensaje de error en caso de error SSI) <br>
<!-#config errmsg = SSI Error de procesamiento-> <p>
Detalles del archivo 'default.asp': <br>
<!-#config sizefmt = bytes->
(Establece el tamaño de retorno de fsize en bytes) <br>
<!-#config sizefmt = bytes->
<!-#fsize file = default.asp->
Devuelve: <b> <!-#fsize file = default.asp-> bytes </b> <br>
<!-#config timeFmt = %a, %b %d %y %h: %m: %s->
(Establece formato para resultados de fecha/hora) <br>
<!-#config timeFmt = %a, %b %d %y %h: %m: %s->
<!-#flastmod file = default.asp->
Devuelve: <b> <!-#FLASTMOD file = default.asp-> </b> <p>
(3) comando #eco
La última parte de la página (solo se puede ver una parte en la pantalla) muestra el contenido de todos los encabezados HTTP a los que se puede acceder utilizando la directiva #ECHO. El código en cada línea es el mismo, excepto que el valor de la propiedad VAR cambia. En el Apéndice G. se proporciona una lista completa de todos los valores permitidos para el atributo var en el Apéndice G.
<Div class = subhead> Variables HTTP </div>
<!-#echo var = auth_type->
Devuelve: <b> <!-#echo var = auth_type-> </b> <br>
<!-#echo var = auth_password->
Devuelve: <b> <!-#echo var = auth_password-> </b> <br>
… etc…
2. Use la directiva #Exec
La directiva #Exec es más difícil de usar que otras directivas SSI, y debido a esto, se coloca independientemente en otra página. Se puede acceder a la página de inicio desde el objeto ASP Server y el menú principal de las directivas SSI.
En esta página, seleccione Usando el enlace de la Directiva de incluir el lado del servidor #echo. Esta operación abre la página de directiva SSI #Exec
La página web de directiva SSI #Exec
Esta es una página web ASP ssi_exec.asp. Se utilizan dos botones para abrir la página .stm, que realiza las acciones descritas en la directiva #Exec.
(1) Ejecute este ejemplo en el servidor
Antes de que el ejemplo de la Directiva SSI #Exec pueda funcionar en el servidor, se deben modificar algunas configuraciones. Primero, debe crear una entrada ssienableCmdDirective (tipo DWORD) en el registro del servidor web, con la ubicación debajo del nombre de la clave:
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlset/Services/W3SVC/Parámetros
Luego establezca el valor en 1
Esto permite que la directiva #Exec se use con el atributo CMD.
En segundo lugar, el acceso anónimo debe estar prohibido para los directorios que contengan archivos .stm utilizando la directiva #Exec. El cliente se verá obligado a proporcionar detalles de la cuenta, que debería ser una cuenta con permisos a nivel de administrador. Este también es un requisito para que el comando neto funcione normalmente.
Active la aplicación de Manager de Servicios de Internet y seleccione el directorio que contiene los archivos .stm utilizando la Directiva #EXEC (en el ejemplo, estos archivos son inicio_cisvc.stm y stop_cisvc.stm en el directorio EXEC). Luego abra el cuadro de diálogo Propiedades para ese directorio. Haga clic en el botón Editar en el área de control de acceso y autenticación anónima en la pestaña Seguridad del directorio para abrir el cuadro de diálogo Métodos de autenticación
La casilla de verificación de acceso anónimo no se selecciona en este cuadro de diálogo. Si no usa Internet Explorer para acceder a la página, abra la opción de autenticación básica para permitir que los navegadores no II accedan a la página enviando nombre de usuario/contraseña. Al configurar, aparece una advertencia sobre la seguridad, haga clic en Sí. El navegador ahora se verá obligado a mostrar la cuenta apropiada y el certificado de identidad porque no se puede acceder a la página de forma anónima.
Para ver los resultados de iniciar y terminar el servicio, abra el complemento MMC de servicios y rescindir el servicio de indexación
(2) Iniciar y terminar el servicio de indexación
Haga clic en el botón en la página web de muestra para iniciar el servicio de indexación de Microsoft.
El nombre corto de este servicio es CISVC, que comúnmente se llama Microsoft Index Server, y el carácter de CI en el nombre en realidad representa al indexador de contenido.
Cuando se le solicite, ingrese el nombre de usuario y la contraseña de una cuenta con privilegios de administrador en el servidor web. Cuando se abre la página (inicio_cisvc.stm), sentirá un cierto retraso porque la directiva #Exec carga una instancia del comando de ventana intérprete (cmd.exe) y luego ejecuta el comando de inicio neto. Una vez que se inicia el servicio (o si ya se está ejecutando), se mostrará el resto de la página
La interfaz que se muestra después de ingresar el nombre de usuario y la contraseña
El código para esta página es muy simple. Puede ver que la Directiva #Exec tiene una propiedad CMD, que se establece en CMD.EXE /C Net Start CISVC. El formulario contiene el botón Enviar para volver a la página anterior:
<p> Procesamiento de la Directiva SSI: </p>
<p> <b> <!-#exec cmd = cmd.exe/c net stop cisvc-> </b> </p>
<!-#exec cmd = cmd.exe /c net stop cisvc->
<Form Action = ../ssi_exec.asp>
<Input type = Subt Name = CMDOK Value =>
Regrese a la página anterior <p>
</form>
Puede abrir otras páginas web .stm desde la página anterior, como stop_cisvc.stm, para finalizar el servicio nuevamente, la única diferencia es que el comando net stop se usa en lugar del comando Net Start.
…
<!-#exec cmd = cmd.exe /c net stop cisvc->
…
Compartir: Ejemplo explica cómo usar el registro de desconexión establecido en ASP Cuando usamos los componentes ADO incorporados de ASP para la programación de la base de datos, generalmente abrimos una conexión al comienzo del script y la cerramos al final del script, pero para scripts más grandes, la conexión está abierta mucho más larga en la mayoría de los casos de lo que debe abrir. Por lo tanto