Usando IIS6, ¿cómo puedo colocar archivos en una subcarpeta pero que se muestren como si estuvieran en la raíz?

StackOverflow https://stackoverflow.com/questions/45796

  •  09-06-2019
  •  | 
  •  

Pregunta

Nuestro sitio web ASP.NET 3.5 que se ejecuta en IIS 6 tiene dos equipos que están agregando contenido:

  • Equipo de desarrollo agregando código.
  • Equipo empresarial añadiendo páginas web sencillas.

Por motivos de cordura y organización, nos gustaría que el equipo empresarial agregue sus páginas web a una subcarpeta del proyecto:

Raíz:para páginas del equipo de desarrollo

Contenido:para páginas del equipo empresarial

Pero

Nos gustaría que los usuarios pudieran navegar al contenido del equipo empresarial sin tener que agregar "Contenido" en sus URL, como se describe a continuación:

Raíz:Predeterminado.aspx (Disponible en:www.oursite.com/default.aspx)

Contenido:Palomitas de maíz.aspx (Disponible en:www.oursite.com/popcorn.aspx)

¿Hay alguna manera de lograr crear una entrada de configuración en una herramienta de reescritura ISAPI para cada una de estas páginas?

¿Fue útil?

Solución

No tengo ninguna forma de probar esto en este momento, pero creo que puedes usar el indicador -f en RewriteCond para verificar si existe un archivo en cualquiera de los directorios.

RewriteCond %{REQUEST_FILENAME} -!f
RewriteCond Content/%{REQUEST_FILENAME} -f
RewriteRule (.*) Content/(.*)

Algo así también podría hacer lo que buscas.

Otros consejos

Dado que las extensiones serán ASPX, ASP.NET recogerá la solicitud...puede escribir un HttpModule que busque páginas que produzcan un 404 y luego verifique también la subcarpeta.

Si sabe que todas las páginas con un formato determinado provendrán de esa carpeta, puede simplemente reescribir la URL en ASP.NET (ya sea en Global.asax o en un HttpModule).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top