La URL compatible con SEO da como resultado que CSS IMG y JS no funcionen

Resuelto asked hace 54 años • 2 respuestas

Quiero que mi URL sea una URL compatible con SEO. Intenté editar .htaccessel archivo reescribiendo la regla.

RewriteRule ^swift-details/([0-9]+)/([0-9a-zA-Z_-]+)$ swift-details.php?id=$1 [NC,L]
RewriteRule ^swift-details/(css|js|img)/(.*)?$ /$1/$2 [L,QSA,R=301]

Está enrutando la URL correcta pero en esa página CSS JS y las imágenes no funcionan.

URL de ejemplo:

http://www.example.com/swift-details/2/abblinbb
 avatar Jan 01 '70 08:01
Aceptado

Esto se debe a que sus URI relativos han cambiado su base. Originalmente, la base es /cuando la página es /swift-details.php?id=foo, y el navegador completa correctamente los enlaces relativos con la /base. Pero cuando el navegador va a una página como /swift/details/foola base, de repente se vuelve /swift/e intenta agregarla delante de todas las URL relativas y, por lo tanto, ninguna de ellas se carga.

Puede hacer que sus enlaces sean absolutos o cambiar la base de URI en el encabezado de sus páginas (entre las <head> </head>etiquetas):

<base href="/">
Amit Verma avatar Jul 06 '2015 09:07 Amit Verma

No necesitas la segunda regla de reescritura. Todas sus rutas CSS/JS son "relativas" a su ubicación actual.

Su CSS existe aquí: /css/normalize.css

Su página está buscando aquí: /swift-details/2/abblinbb/css/normalize.css

Todo lo que necesita son 'barras diagonales' antes de las rutas CSS/JS.

MaggsWeb avatar Jul 06 '2015 09:07 MaggsWeb