¿Cómo hacer referencia a las imágenes de diseño en express.js para que se puedan encontrar en directorios nesteds?

Tengo una aplicación express.js actualmente usando ejs (usando jade para proyectos más nuevos) y estoy tratando de resolver un problema de una manera limpia y adecuada.

Tengo un archivo layout.ejs con mi encabezado y pie de página. La mayor parte de mi sitio hasta ahora ha sido una capa profunda http://innovationbound.com/about o / services o / amy y así sucesivamente …

Estoy empezando a crear cursos en línea en http://innovationbound.com/courses/course-name y el problema que tengo es que estas páginas del curso no pueden hacer referencia a las imágenes de la misma manera. LinkedIn Icon por ejemplo.

Desde la página del nombre del curso, intenta LinkedIn Icon y obviamente no puede capturar la imagen allí.

¿Hay un ajuste en expreso, o algo obvio que me estoy perdiendo? Espero no tener que usar URL absolutas, lo que hace que el desarrollo en la máquina local sea una locura.

Simplemente use las rutas de la raíz del sitio relativas. Por ejemplo, LinkedIn Icon . Tenga en cuenta la / hace la diferencia.

Hay tres tipos de rutas de enlace:

De Adobe .

Puede considerarlo, pero puede usar “../images/link(n?)edin.png”. Sin embargo, recomiendo usar la ruta absoluta, ya que las imágenes deben almacenarse en / public (en general, la configuración de jade) y la regla de su ruta puede variar la profundidad de su ruta.

Como sugerencia, si perdió en la ruta relativa de la imagen, haga clic con el botón derecho en la imagen rota y vea una URL en las propiedades del navegador web. Te dará una pista de dónde está la imagen.