Al probar WebAssembly en un servidor apache instalado con XAMPP e intentar cargar un archivo con extensión wasm
aparecía el siguiente error:
Uncaught (in promise) TypeError: Failed to execute ‘compile’ on ‘WebAssembly’: Incorrect response MIME type. Expected ‘application/wasm’
Esto es porque Apache no sabe de qué tipo son los archivos wasm, y no los sirve con el MIME correcto.
Vamos a ver dos soluciones a esto.
Si eres dueño del hosting
En caso de que tú seas el administrador o tengas acceso completo al servidor (y no sea un hosting compartido o gratuito) entonces modifica el archivo mime.types
de Apache.
En Windows con XAMPP está en apache/conf
.
Ahí agrega la siguiente línea:
application/wasm wasm
Guarda cambios y reinicia el servidor.
Con htaccess
Si no eres dueño del servidor entonces crea un archivo .htaccess en el lugar en donde vas a servir el archivo wasm.
El contenido debe ser el siguiente:
AddType application/wasm wasm
No es necesario reiniciar el servidor, simplemente recarga y elimina el caché.
Conclusión
Con este enfoque podremos servir archivos wasm (de WebAssembly) con Apache, agregando el MIME type a la configuración.