0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

有効な記事を見つけるのに少し苦労したので、どなたかの助けになれば幸いです。

前提と経緯

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>

参考:https://stackoverflow.com/questions/77473744/pdf-js-library-not-able-to-import-due-to-disallowed-mime-type

補足

上記htaccessの設定で、mjs拡張子がtext/javascriptのふるまいをするように設定を上書きするようです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?