はじめに
有効な記事を見つけるのに少し苦労したので、どなたかの助けになれば幸いです。
前提と経緯
reactにreact-pdf(v9.0.0)をインストールしている状態です。
ビルドツールはviteを利用しています。
下記の公式リファレンスをもとに、pdfjsを用いてpdfを表示させようとしていました。
エラー
npm run buildで生成されたものをEC2環境に入れたところ、コンソールにエラーが出力しました。
Failed to load module script:
Expected a JavaScript module script but the server responded with a MIME type of "text/plain".
Strict MIME type checking is enforced for module scripts per HTML spec.
1文目から、jsファイルの何かが悪さをしている・・?と仮説が立ちました。
結論
pdfjsのファイルパスを設定する箇所で、mjsという拡張子のファイルパス(npm run build)を指定していることが原因でした。
publicフォルダ中にある、.htaccessファイルに下記を追加することで改善しました。
.htaccess
<IfModule mod_mime.c>
AddType text/javascript mjs
</IfModule>
補足
上記htaccessの設定で、mjs拡張子がtext/javascriptのふるまいをするように設定を上書きするようです。