Next.jsの設定などあれこれ

ローカルにLinux鯖立てて、Windowsから接続して開発している私が、
Next.jsで設定する際にやっていることを紹介(メモ用なので、覚え書き程度)
環境設定?そんなのAIに聞いとけ

なお、便宜上プロジェクト名は「my-app」とします。

  • npx create-next-app@latest my-app
  • cd my-app
  • SSLの設定
    • npm install openssl
    • openssl genrsa -out local-ssl-proxy.key 2048
    • openssl req -new -key local-ssl-proxy.key -out local-ssl-proxy.csr
    • openssl x509 -req -days 365 -in local-ssl-proxy.csr -signkey local-ssl-proxy.key -out local-ssl-proxy.crt
    • npm install –save-dev local-ssl-proxy
    • npm install concurrently
  • package.jsonの書き換え

これで、一通りの設定が完了するので、

npm run dev

で起動して確かめよう

create-next-app

解説は別ページでやるとして、ひとまずどのように設定したのかだけ、解説

コマンドを打ったら選択肢が出てくるので、初めから
TypeScript:No,
ESLint:Yes,
Tailwind CSS:No,
src/ directory:Yes,
App Router:Yes,
Turbopack:Yes,
import alias:No
の順番で選択

この時点のファイル構造

my-app
|-node_modules
| |-モジュールフォルダがいっぱい
|-public
| |-画像ファイル(.svc)がそこそこ
|-src
| |-app
|    |-fonts
|    |-favicon.ico   //初期ファビコン
|    |-globals.css   //全体用CSS
|    |-layout.js     //フォントやメタデータ設定用
|    |-page.js       //メインのルートページ
|    |-page.module.css//page.jsで使ってるCSS
|-jsconfig.json
|-next.config.mjs
|-package.json
|-package-lock.json
|-README.md

AIに渡すなら、

my-app
|- node_modules
|- public
|- src
|  |- app
|     |- fonts
|     |- favicon.ico
|     |- globals.css
|     |- layout.js
|     |- page.js
|- jsconfig.json
|- next.config.mjs
|- package.json
|- package-lock.json
|- README.md

で十分です。

SSL設定

SSL設定について、解説(OpenSSLはインストール済みであること)

  • openssl genrsa -out local-ssl-proxy.key 2048
  • openssl req -new -key local-ssl-proxy.key -out local-ssl-proxy.csr
  • openssl x509 -req -days 365 -in local-ssl-proxy.csr -signkey local-ssl-proxy.key -out local-ssl-proxy.crt
  • npm install –save-dev local-ssl-proxy

この辺りで、SSL(http→https)の設定をやってます。

色々聞かれるけど、基本的にすべてEnterを連打すればOK

package.jsonの書き換え

完了後(プロキシのインストール後)に、

    "dev": "next dev --turbopack --hostname 0.0.0.0 --port 3000",
    "start:dev": "concurrently \"next dev --turbopack --hostname 0.0.0.0 --port 3000\" \"local-ssl-proxy --source 8443 --target 3000 --key local-ssl-proxy.key --cert local-ssl-proxy.crt\"",

package.jsonのdevをこれに置き換え、ローカルへの公開とポートの指定、SSL実行用(start:dev)の追加を行う。
ちなみに、start:devは、開発鯖とSSLプロキシ鯖を別々で起動する必要があったために追加してます。

Web3系だと、ローカルでもSSL証明必須なので、設定しておきましょう……

コメントを残す

メールアドレスが公開されることはありません。必須項目には印がついています *