Pregunta

Tenemos un sitio de prueba alojado solo por dirección IP. Realmente necesitamos probar algunas funciones que dependen del subdominio que alguien esté usando para acceder al sitio. Pero, por supuesto, ni siquiera podemos UTILIZAR subdominios con un sitio de IP únicamente.

Entonces, pensé que en lugar de subdominios, podríamos hacer que los evaluadores abran el sitio con una URL como esta: http://192.168.0.1/smith o http://192.168.0.1/jones y luego los redirigiré a http://192.168.0.1/default.aspx?site=smith etc ...

Nuestros evaluadores se encuentran en el cliente, y pedirles que ingresen en la cadena de consulta sería problemático. Además, realmente me gustaría obtener una introducción rápida a la reescritura de URL.

¿Alguien me puede dar una idea de si es posible lo que quiero hacer y, de ser así, un indicador de algún código o explicación o algo?

Estamos usando asp.net 3.5 y iis6, creo.

¡Gracias por cualquier ayuda!

¿Fue útil?

Solución

Escribí una introducción a URL Rewriting in ASP.NET en mi blog, por lo que vale. Siéntase libre de publicar más preguntas aquí para aclarar cualquier problema específico que tenga.

Otros consejos

esto definitivamente funcionará en tu situación http://www.urlrewriting.net/149/en/home.html

hemos implementado lo mismo que usted solicitó, su dll de código abierto y usted necesita escribir algunas reglas en web.config, de acuerdo con su scanario, su regla es algo así como

<add name="index" virtualUrl="^~/(.*)/Default.aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Default.aspx?site=$1&amp;urw=t" ignoreCase="true"/>

posiblemente podría cambiar el archivo de hosts en la máquina de prueba para apuntar dominios (y subdominios) a esa IP, de esa manera no tendría que depender del DNS y podría probar como si los dominios fueran asignados.

más información aquí:

http://labnol.blogspot.com /2004/10/tweak-your-windows-hosts-file.html

  

esto es parte de .Net 3.5 y es el   mismo mecanismo utilizado por MVC

Esto hace que tu vida sea más fácil, ya que todo está contenido en HttpContext.CurrentContext.Items [" "]

He adaptado este código para algunos proyectos donde tengo un archivo de configuración XML. Luego utilizo este archivo para crear RouteCollection . Este código también se ha extendido fácilmente para manejar 301 redirecciones para SEO.

Este método también se carga una vez en tu AppPool y elimina la necesidad de analizar los archivos XML y las configuraciones para cada llamada. Esta hasta ahora ha sido la mejor solución para mí en cuanto a rendimiento.

Si necesita ayuda, hágamelo saber. Con mucho gusto echaré una mano.

Editar: 13/09/09

Todavía no he encontrado ese problema, ya que generalmente manejo la verificación de la membresía / autenticación en cada página. Normalmente tengo un control o método al que llamo en la página para validar / autorizar a un usuario. Mis clientes rara vez utilizan la membresía ASP.Net, por lo general dependen de subsistemas propietarios a los que necesitamos conectarnos.

He ampliado los ejemplos proporcionados en los enlaces anteriores para poder escribir una tabla de enrutamiento xml que se carga cuando la aplicación se inicia o cuando fuerzo una actualización de RouteCollection.

hasta ahora esto ha demostrado que funciona bastante bien. esto también puede permitir un cambio en las rutas mientras la aplicación se está ejecutando, sin tiempo de inactividad.

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