Kiểu MIME của file .js là gì?
Kiểu MIME (media type) của file JavaScript có đuôi .js là text/javascript. Bạn cũng có thể gặp application/javascript. Cùng kiểu này được dùng cho .mjs. RFC 9239 (2022) đã biến text/javascript thành kiểu chính thức; application/javascript vẫn được chấp nhận ở mọi nơi. Các ES module được tải bằng <script type="module"> phải được phục vụ với kiểu MIME JavaScript, nếu không trình duyệt sẽ chặn chúng.
Header Content-Type
Content-Type: text/javascript; charset=utf-8
Các kiểu dựa trên văn bản nên kèm charset để trình duyệt giải mã ký tự đúng cách.
Cấu hình máy chủ
| Máy chủ | Cấu hình |
|---|---|
Nginx (mime.types hoặc types {}) | text/javascript js; |
Apache (.htaccess) | AddType text/javascript .js |
IIS (web.config) | <mimeMap fileExtension=".js" mimeType="text/javascript" /> |
| Node.js / Express | res.type('js') hoặc res.setHeader('Content-Type', 'text/javascript; charset=utf-8') |
| Amazon S3 | Đặt Content-Type: text/javascript trên object (metadata), hoặc truyền --content-type text/javascript vào aws s3 cp |
Có nên nén file .js không?
Có. JavaScript là văn bản, nên bật gzip hoặc Brotli cho text/javascript thường giúp giảm 50–80 % dung lượng truyền tải. Hãy đảm bảo danh sách nén của máy chủ có kiểu này — kiểm tra bằng công cụ kiểm tra nén website.
Vì sao kiểu MIME quan trọng
Trình duyệt quyết định xử lý phản hồi — hiển thị, chạy, phát hay tải xuống — dựa trên header Content-Type, không phải đuôi file. Với X-Content-Type-Options: nosniff, kiểu sai khiến stylesheet và script bị chặn hoàn toàn. Với file tải lên, đừng bao giờ tin kiểu do client gửi; hãy kiểm tra nội dung file (magic bytes) trên máy chủ.
Tra cứu kiểu MIME
Tìm kiếm mọi đuôi file và kiểu MIME phổ biến, kèm header Content-Type sẵn sàng sao chép.
Câu hỏi thường gặp
Kiểu MIME của .js là gì?
text/javascript. Các kiểu thay thế thường gặp: application/javascript.Làm thế nào để đặt Content-Type cho .js trong Nginx?
text/javascript js; có trong khối types (thường nằm trong /etc/nginx/mime.types) rồi tải lại Nginx.