ホームページ > ウェブフロントエンド > フロントエンドQ&A > Nodejsのポートを変更する方法

Nodejsのポートを変更する方法

WBOY
リリース: 2023-05-13 19:55:06
オリジナル
1421 人が閲覧しました

Node.js は、Chrome V8 エンジンに基づいた JavaScript 実行環境であり、ノンブロッキング I/O モデルを備えたサーバー側のフレームワークです。 Node.js では、指定されたポートをリッスンすることで HTTP サーバーを作成できます。一般的に使用されるポート番号には、80、443、3000 などがあります。ただし、特定のニーズを満たすために Node.js のポート番号を変更する必要がある場合があります。この記事では、Node.jsのポート番号を変更する方法を紹介します。

  1. コマンド ライン パラメーターの使用

Node.js を使用して HTTP サーバーを作成する場合、コマンド ライン パラメーターを使用してポート番号を指定できます。具体的な操作方法は次のとおりです。

ターミナルで次のコマンドを実行します。

node app.js 8080
ログイン後にコピー

このうち、app.js は Node.js のコード ファイル、8080 はポート番号です。聞きたいです。

Node.js にはグローバル オブジェクト プロセスがあり、これには Node.js プロセスで利用可能な関連情報とノード プロセスを制御するメソッドが含まれています。プロセス オブジェクトを通じて、コマンド ライン パラメーターを取得できます。

app.js ファイルを開き、次のコード行を追加します。

const port = process.argv[2] || 3000;

app.listen(port, () => {
  console.log(`Server listening on port ${port}`);
});
ログイン後にコピー

上記のコードでは、process.argv を使用してコマンド ライン パラメーターを取得し、それらを変数 port に保存します。コマンド ライン パラメータが渡されない場合、デフォルトで 3000 がポート番号として使用されます。最後に、app.listen メソッドを使用して HTTP サーバーを起動します。

この方法では、コマンド ライン パラメーターでポート番号を直接指定できるため、Node.js サーバーのポート番号を柔軟に設定できます。

  1. 環境変数の使用

コマンド ライン パラメーターの使用に加えて、環境変数を使用して Node.js サーバーのポート番号を指定することもできます。

ターミナルでは、次のコマンドを使用して環境変数を設定できます。

export PORT=8080
ログイン後にコピー

ここで、PORT は環境変数の名前、8080 は監視するポート番号です。

Node.js コードでは、環境変数を読み取ることでポート番号を取得できます。具体的な操作方法は次のとおりです。

app.js ファイルを開いて次のコードを追加します。

const port = process.env.PORT || 3000;

app.listen(port, () => {
  console.log(`Server listening on port ${port}`);
});
ログイン後にコピー

上記のコードでは、process.env を使用して、環境変数を取得し、変数 port に保存します。環境変数が設定されていない場合、デフォルトで 3000 がポート番号として使用されます。最後に、app.listen メソッドを使用して HTTP サーバーを起動します。

この方法では、Node.js アプリケーションをデプロイするときに環境変数を設定することでサーバーのポート番号を指定できます。

概要

Node.js のポート番号を変更するには、コマンド ライン パラメーターを使用する方法と環境変数を使用する方法の 2 つがあります。コマンド ライン パラメーターを使用すると、ポート番号を直接指定できるため柔軟性が高く、運用環境への展開には環境変数を使用する方が適しています。一般に、さまざまなアプリケーション シナリオに応じて、さまざまな方法を選択して Node.js のポート番号を変更します。

以上がNodejsのポートを変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート