Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

167
Vistas
¿Cómo evitar que se acceda directamente a los recursos estáticos en golang http.FileServer?

¡que tengas un lindo día! Sinceramente pido su consejo y ayuda. Uso el back-end escrito por golang. Espero que mi página web pueda cargar CSS e imágenes. Yo uso los siguientes métodos:

 fs := http. FileServer(http.Dir("mystatic/")) http. Handle("/static/", http.StripPrefix("/static/", fs))

Luego cargo CSS e imágenes de la siguiente manera:

 <img src= "/static/img/name_of_picture.jpeg" class="img-fluid" alt="fail" > <link href="/static/assets/css/bootstrap.min.css" rel="stylesheet" type="text/css" id="bs-default-stylesheet" />

Sin embargo, existe un problema grave de que el cliente accederá a los recursos estáticos utilizando la URL más /static/, y accederá y descargará directamente todo mi CSS e imágenes. ¿Cómo puedo evitar que el cliente acceda a estos recursos directamente?

Traté de usar nginx para prohibir el acceso a /static/, pero la página web también estaba bloqueada y no podía cargar CSS ni imágenes. Noté que otros sitios web deberían usar métodos para prohibir el acceso directo a los recursos estáticos del sitio web (la visualización de la página web no tiene permiso), pero lo intenté durante varios días y fallé, y no sé qué palabras clave usar para encontrar la respuesta, realmente espero que pueda guiarme sobre cómo evitar que los clientes usen directamente el sitio web y /static/ accedan a mis recursos estáticos. ¡Muchos gracias!

//------------------------------------------------ ----------------

Notas adicionales:

Tengo la idea de que puedo leer y escribir imágenes directamente en el sitio web, pero no sé cómo escribir varias imágenes en una página web en forma de flujo de datos en golang;

¿Y no sé cómo usar golang para leer archivos CSS directamente de acuerdo con la ruta real y luego volver a la página web?

códigos:

 func go_ web_ webs1_ (w http.ResponseWriter, r *http.Request) { t, _ := template. ParseFiles("static/web/basic.html", "static/web/body.html") t.Execute(w, nil) }

Si la imagen se puede cargar usando lo siguiente,

 func showPicHandle( w http.ResponseWriter, req *http.Request ) { file, err := os. Open("." + req. URL. Path) errorHandle(err, w); defer file. Close() buff, err := ioutil. ReadAll(file) errorHandle(err, w); w.Write(buff) }

Entonces puedo escribir la imagen directamente en la página sin usar recursos estáticos, pero no sé cómo cargar varias imágenes de esta manera y devolverlas a los html anteriores al mismo tiempo.

 t, _ := template. ParseFiles("static/web/basic.html", "static/web/body.html")

Me pregunto si la idea anterior también es una solución y cómo debería implementarse.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda