
Acabo de configurar un servidor Apache2 y funciona bien. Dado que el propósito de este servidor es simplemente servir archivos versionados, creé un latest
enlace simbólico dirigido ap.ej myfile_v1.1.0.ext
.
El problema es que cuando accedo a la URL http://localhost/latest
, la ventana de descarga muestra latest
el nombre del archivo y application/octet-stream
el tipo MIME.
Me gustaría que cuando acceda a esta misma URL, se muestre myfile_v1.1.0.ext
como el nombre del archivo y application/my-app
como el tipo MIME.
¿Hay alguna manera de lograrlo?
Muchas gracias de antemano
Respuesta1
Una forma de hacerlo sería utilizar un Alias en la configuración de Apache. La desventaja es que necesitarás actualizar esto cada vez que haya una versión, pero el beneficio es que puedes tener un mayor grado de control sobre cómo se maneja el archivo.
Aquí sabrás como podrás hacerlo:
- Edite el archivo Apache
.conf
para el sitio. - Añade esto en la
<VirtualHost>
sección:
Nota:Asegúrese de reemplazarloAlias "/download" "/path/to/releases/myfile_v1.1.0.ext" <Directory "/path/to/releases"> Options FollowSymLinks AllowOverride All <FilesMatch "\.(ext|zip)$"> Header set Cache-Control "max-age=1209600, public" ForceType application/tar+gzip </FilesMatch> </Directory>
application/tar+gzip
con el tipo de contenido adecuado para el archivo. - Guarde el archivo y reinicie Apache:
Nota:Siéntete libre de cambiarsudo service apache2 restart
restart
conreload
. - Pruebe la URL visitando
your.site/download
Esto ha sido probado en Ubuntu Server 20.04.3 LTS con Apache 2.4.41
Respuesta2
La solución es simplemente agregar una Redirect
directiva en el archivo de configuración de Apache para su sitio web.
Redirect "/latest" "files/myfile_v1.1.0.ext"