Opened 4 months ago

Last modified 4 months ago

#2216 new enhancement

Add .mjs to known JS MIME types

Reported by: Bradley Meck Owned by:
Priority: minor Milestone:
Component: documentation Version: 1.19.x
Keywords: mime js javascript Cc:
uname -a: Darwin LM-C02YV4YSLVDR 18.7.0 Darwin Kernel Version 18.7.0: Mon Feb 10 21:08:45 PST 2020; root:xnu-4903.278.28~1/RELEASE_X86_64 x86_64
nginx -V: nginx version: nginx/1.19.5

Description

I was told to make a ticket here per the mailing list thread: http://mailman.nginx.org/pipermail/nginx-devel/2021-July/014176.html

.mjs is supported by Node.js, is in JS specification examples ( E.G. https://tc39.es/ecma262/#sec-hostresolveimportedmodule ), and WHATWG specification examples ( https://html.spec.whatwg.org/multipage/webappapis.html#integration-with-the-javascript-module-system ), and has an upcoming MIME update per IETF ( https://datatracker.ietf.org/doc/draft-ietf-dispatch-javascript-mjs/ ). It is also supported by various existing MIME databases and serves properly on various hosts like Github Pages without custom configuration.

Change History (1)

comment:1 by Maxim Dounin, 4 months ago

For the record, a few relevant links:

Overall seems to be only important in Node.js ecosystem, where the .js extension means project-default module type, while .mjs and .cjs mean ECMAScript and CommonJS modules, respectively. While it might be usable to distinguish modules from scripts in the web, there is no clear difference. It is also not clear if we need to provide support in the default mime.types.

Note: See TracTickets for help on using tickets.