2008-10-07 25 views
66

Necesito editar el archivo web.config en un entorno Sharepoint en vivo, pero no estoy seguro de lo que sucederá si lo hago (quiero generar errores personalizados).¿Qué sucede cuando edito web.config?

¿Esto causará que el proceso de trabajo de IIS6 se recicle?

¿Los usuarios activos perderán su estado de sesión debido a esto?

¿O puedo editar con seguridad el archivo?

+0

Puede definir sesiones para colocar en una máquina remota, por lo que restablecer la aplicación no provocará la pérdida de la sesión – Kamarey

Respuesta

64

El grupo de aplicaciones se reiniciará y se perderá el estado de la sesión. Imagine que cada aplicación ASP.NET (como se define en IIS) es un programa en el escritorio. Guardar web.config hará algo similar a cerrar el programa y volver a abrirlo.

+6

No estoy seguro acerca de IIS6, pero en IIS7 e IIS8 este es el comportamiento * predeterminado *, aunque puede cambiarlo a través de Grupos de aplicaciones > Opciones avanzadas> Reciclaje> Deshabilitar el reciclaje para cambios de configuración = ** verdadero ** que es útil para entornos de producción, por ejemplo, para que los administradores puedan realizar un cambio que no debe entrar en vigencia hasta el próximo reciclaje. Con Sharepoint específicamente, hay una manera de programar los cambios para que se apliquen en un momento específico, creo. – nothingisnecessary

+2

@nothingisnecessary Pero, ¿la configuración 'Grupos de aplicaciones> Opciones avanzadas> Reciclaje> Deshabilitar el reciclaje' _por sí misma_ causa el reciclaje de un grupo de aplicaciones? Tortugas todo el camino? – RedFilter

+0

Hola @DanGoldstein. Menciona '* algo similar *' al cierre del programa y la reapertura. ¿Qué pasa con el estado estático? ¿Está el estado estático ** garantizado ** borrado por una edición web.config? La razón es que almaceno algunas cosas de web.config en variables estáticas. –

0

Si usted tiene alguna idea de editar la configuración web, por favor mirar en la clase SPWebConfigModification.

1

Como ya lo mencionaron algunas personas: el grupo de aplicaciones del sitio en IIS se reiniciará (esto generalmente lleva unos segundos). Como resultado, la (s) siguiente (s) solicitud (es) de página serán más lentas (ya que nada se almacenará en la memoria caché). También se perderá el estado de la sesión de los usuarios; PERO en el estado de la sesión de WSS no se utiliza por defecto, en MOSS es utilizado por los Servicios de formularios de InfoPath. Por lo tanto, podría ser que no tenga grandes problemas relacionados con la pérdida del estado de la sesión.

En el otro lado; para superar esos problemas: lo que normalmente se hace es crear una solución de SharePoint (WSP) que implementa e inicia un trabajo de temporizador para realizar los cambios en el código web.config del código (utilizando la clase SPWebConfigModification del Modelo de objetos). Lo bueno es que puedes programar la ejecución del cambio, para que tus usuarios no lo noten.

8

Además, si el estado de la sesión se configura como fuera de proceso (base de datos o servicio), entonces el reciclaje del grupo de aplicaciones no perderá ningún estado de la sesión. Esto es tan cierto para Sharepoint como lo es para ASP.Net de vanilla.

Cuestiones relacionadas