Hero img
Gatsbyのソースコードを隠蔽する

Gatsbyのソースコードを隠蔽することができました。

Gatsby source codeを隠蔽する方法がようやく分かりました。 Google DevToolでソースの部分を見ても読めなくなりました。


目次

  • Gatsbyソースコードの隠蔽
  • source-maps
  • まとめ

Gatsbyソースコードの隠蔽

Gatsbyのソースコードを隠蔽するには、どうすればいいのかひたすら探してみました。
まずGatsbyはReact系なので環境ファイル.envにGENERATE_SOURCEMAP=falseを付け加えてみました。
確かにモジュールの部分は見えなくなり、プラグインの中身を見ることができなくなりました。
しかし.cacheというフォルダーの中身が見えてしまいどう頑張っても隠蔽するすることができず、Gatsbyのソースコードを見ることができてしまいました。 orz...... gatsby-source-map

source-maps

なんだかんだで検索していくうちに、これらはソースマップがあるから見れてしまうことだと分かりました。 つまり、ソースマップを作らないという設定をすれば隠蔽できるということです。 ソースマップを作らない設定はgatsby-node.jsに追加するだけです。

title=gatsby-node.js
//たぶん皆さんcreatePagesはあるはず
exports.createPages = async ({ actions, graphql, reporter }) => {
  const { createPage } = actions
//......省略
}

//これ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
exports.onCreateWebpackConfig = ({ actions, stage }) => {
  if (stage === 'build-javascript') {
    // turn off source-maps
    actions.setWebpackConfig({
      devtool: false
    })
  }
};

build時にソースマップを作らないでねと指定しています。 これでgoogle dev toolで見ても中身が見れなくなりました。 gatsby-source-map-hidden

まとめ

英語を学ぼう。すべての情報は英語で出てくる。
公式サイトもデプロイはこの設定をしてくださいと書いてあれば大変良かったのですが...
とりあえず日本語の情報が少なすぎる。

関連記事

コメント

コメントを書く

質問や、間違いがありましたら、お気軽にどうぞ

※お名前とコメントの内容を入力してください。
※全てこのブログ上に公表されます。
※許可なく管理者によって修正・削除する場合がございます。 詳しくはプライバシーポリシーを参照ください