Tema: Web.Config
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/06/2015, 01:44
PabloManuel
 
Fecha de Ingreso: diciembre-2010
Mensajes: 236
Antigüedad: 13 años, 5 meses
Puntos: 6
Exclamación Web.Config

Hola!!

Creo que esto va aquí, si no, me lo movéis.

Estoy creando url amigables en una Web con ASP clásico. Este es un ejemplo de las url a cambiar:

Antigua:

dominio.com/noticia.asp?id=155&title=titulo-de-la-noticia

Y debe quedar así:

dominio.com/blog/155/titulo-de-la-noticia

Para ello creo esto en web.config:

Código XML:
Ver original
  1. <rule name="Rewrite to article.aspx" stopProcessing="true">
  2.               <match url="^blog/([0-9]+)/" />
  3.               <action type="Rewrite" url="noticiaampliada.asp?cod={R:1}" appendQueryString="false"/>
  4.             </rule>
  5.            
  6.             <rule name="Redireccion paginado articulos">
  7.                 <match url="^noticiaampliada.asp$" />
  8.                 <conditions>
  9.                       <add input="{QUERY_STRING}" pattern="cod=(\d+)" />
  10.                 </conditions>
  11.                 <action type="Redirect" url="/blog/{c:1}/" redirectType="Permanent" appendQueryString="false"/>
  12.             </rule>

la primera regla es la que convierte y la segunda es la inversa, redirección 301
Funciona, pero al entrar me fastidia el resto de enlaces

yo creía que esto era transparente, pero no.

es decir si dentro del html hay enlaces como éste:

Código HTML:
Ver original
  1. action="noticia.asp?altcom=si&cod=155"
  2. href="data/fotosno/g155.jpg"


al pinchar, me crea al siguiente enlace:

dominio.com/blog/155/noticia.asp?altcom=si&cod=155
dominio.com/blog/155/data/fotosno/g155.jpg

Con el consiguiente error

Para solucionarlo si pongo los enlaces empezando con "/" se soluciona pero imaginaos el follón, no es sólo en el html, sino también en llamadas ajax o en registros de la base de datos.

¿Qué tengo que escribir en el Web.config para solucionar esto?