Ubuntuがnodejs Webサイトをデプロイ
Ubuntu は、多くの開発者が Web アプリケーションを展開するために選択する人気のオープンソース オペレーティング システムです。人気のある Web 開発言語の 1 つは Node.js で、Web アプリケーションを構築するための高速かつ柔軟な方法を提供します。この記事では、Ubuntu オペレーティング システムに Node.js Web サイトをデプロイする方法を紹介します。
ステップ 1: Node.js をインストールする
まず、Node.js をインストールする必要があります。ターミナルで次のコマンドを入力してインストールできます:
sudo apt-get update sudo apt-get install nodejs
ターミナルで node
コマンドを実行するには、Node.js のソフト リンクもインストールする必要があります。次のコマンドを入力します。
sudo ln -s /usr/bin/nodejs /usr/bin/node
Node.js がインストールされ、正しく構成されているかどうかを確認した後、次のコマンドを使用して確認できます。
node -v
すべてが正常であれば、Node.js が表示されるはずです。 jsのバージョン番号。
ステップ 2: npm をインストールする
npm は、Web アプリケーションの依存関係を簡単に管理できる Node.js のパッケージ マネージャーです。 npm をインストールするには、ターミナルで次のコマンドを実行します:
sudo apt-get install npm
npm が正常にインストールされたことを確認するには、ターミナルで次のコマンドを入力します:
npm -v
ステップ 3: Ubuntu にノードをデプロイします。 js website
Node.js と npm がインストールされたので、次のステップは、Node.js Web サイトを Ubuntu にデプロイすることです。
最初のステップは、Node.js アプリケーションを作成することです。 Node.js アプリケーションをまだ作成していない場合は、次の手順に従って作成してください:
- プロジェクト フォルダーを作成し、そこに移動します:
mkdir my-node-app cd my-node-app
- 新しい Node.js アプリケーションを 1 つ初期化します:
npm init
npm init コマンドを使用すると、名前、バージョン番号、説明など、アプリケーションに関するさまざまな詳細を入力できます。最後に、package.json ファイルに構成ファイルが含まれます。
- サーバー ファイルを作成してコードの記述を開始します:
touch server.js
server.js ファイルにコードを記述できます:
const http = require('http'); const hostname = '127.0.0.1'; const port = 3000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World '); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
ここにコード例では、HTTP サーバーを作成し、サーバー上のポート 3000 をリッスンしました。サーバーがリクエストを受信すると、ブラウザーに「Hello World」が返されます。
次に、npm を使用して、最も人気のある Node.js フレームワークの 1 つである Express をインストールする必要があります。プロジェクト ディレクトリで、次のコマンドを実行します。
npm install express --save
--save フラグにより、package.json ファイルに依存関係が自動的に追加されます。
Express を使用してアプリケーションを構築するには、server.js ファイルに次のコードを追加します。
const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Hello World!'); }); app.listen(port, () => { console.log(`Server running at http://${hostname}:${port}/`); });
この例では、app.get() メソッドを使用してルートを定義します。ルートパスが一致するのと同じであり、応答として「Hello World!」を送信します。
ステップ 4: Node.js サービスを開始する
これで、Node.js Web サイトを Ubuntu にデプロイする準備が整いました。ターミナルで、Node.js アプリケーション フォルダーに移動し、サーバーを起動します。
cd my-node-app node server.js
これで、Web ブラウザを使用して http://localhost:3000 にアクセスできるようになり、「Hello World!」情報が表示されるはずです。 。
ステップ 5: Web サイトを運用環境にデプロイする
最後に、Node.js Web サイトを運用環境にデプロイするには、リバース プロキシ ソフトウェアを使用してノードに接続する必要があります。 jsサーバーからWebサーバーへ。この例では、Nginx を使用します。
まず、Nginx をインストールします:
sudo apt-get install nginx
次に、構成ファイル /etc/nginx/sites-available/default を開き、次の行を追加します:
server { listen 80; server_name example.com; location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
この例では、 , サーバーの名前を example.com に設定し、127.0.0.1:3000 からのすべてのリクエストをプロキシするように Nginx を構成します。
ファイルを保存して閉じ、Nginx サービスを再起動します。
sudo service nginx restart
これで、ドメイン名を使用して Node.js Web サイトにアクセスできるようになります。
概要
この記事では、Ubuntu オペレーティング システムに Node.js Web サイトをデプロイする方法を学びました。 Node.js と npm をインストールし、Express フレームワークを使用して単純な Node.js アプリケーションを作成しました。最後に、アプリケーションを Nginx リバース プロキシに接続して、運用環境で実行できるようにします。この記事が Ubuntu への Node.js Web サイトのデプロイに役立つことを願っています。
以上がUbuntuがnodejs Webサイトをデプロイの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











csgradententenhancebackgroundswithdephisualappeal.1.startwithlineargradientsforsmoothcolortransitionsalongaline、specivisingdirectionandcolorstops.2.useradialients forcurareffects、調整操作denterposition..

ariaattributesenhancewebaccessibility forusers withdisabilitivitionsividing additionalsalsalsivation-assivetechnologies.theyareneedededemodernjavascript-heavycomponentsは、ult inacsibulitive featuresiveturefillements、およびarriafillを維持することができます

Parcelは、箱から出てくるゼロコンフィ分のフロントエンドパッケージツールです。インテリジェントなデフォルト値を使用して、JS、CSS、画像などのリソースを自動的に処理します。 BabelまたはPostCSSの手動構成は必要ありません。開発サーバーを起動するか、生産バージョンを構築するために、エントリファイルを指定する必要があります。 React、TypeScript、SASSなどの複数の言語とリソースタイプをサポートしています。パフォーマンスを向上させるためにRustによって達成されたマルチコアコンパイルを使用し、ホットアップデート、クリアエラープロンプト、HTTPSローカル開発などの友好的な体験を提供します。構成要件が低いプロジェクトやシナリオをすばやく構築するのに適していますが、高度にカスタマイズされた要件の下でWebpackやViteほど適用されない場合があります。

Reactコンポーネントをテストするための鍵は、適切なツールを選択し、検証のためにユーザーの動作をシミュレートすることです。 1. JestやReactTestingLibrary(RTL)などの主流ツールを使用して、ユーザーイベントとの相互作用の信頼性を向上させます。 2.単体テストを書き込むときは、レンダリングを介してコンポーネントをレンダリングし、画面を使用してノードをクエリし、結果をアサートします。 3. fireeventまたはusereventを使用して、クリック、入力、その他の操作をシミュレートして、状態の変更を確認します。 4. Snapshotテストは、静的UI構造の変化検出に適していますが、行動テストを置き換えることはできません。これらの方法は、コンポーネントの安定性と保守性を効果的に改善できます。

Reduxは、JavaScriptアプリケーションの状態を中央に管理するために使用されるツールであり、大規模なプロジェクトのコンポーネント間の通信が頻繁であり、状態を維持するのが困難な状況に適しています。 1.単一のデータソースを提供すると、すべての状態が統一ストアに保存されます。 2。状態は読み取り専用であり、意図はアクションの説明を通じて更新されます。 3。純粋な関数還元剤を使用して、状態の変更を実行します。実際の開発では、reduxtoolkitとReact-Reduxが組み合わさって操作を簡素化することがよくありますが、すべてのプロジェクトを使用する必要はありません。グローバルな状態の乱用とレデューサーの副作用は避けるべきです。

Reactコンポーネントのライフサイクルは、マウント、更新、アンインストールの3つの段階に分割されます。各ステージには、対応するライフサイクルフック機能があります。 1.マウントフェーズには、状態を初期化するためのconstructor()が含まれます。Render()はJSXコンテンツを返し、componentDidMount()はデータ要求の開始またはタイマーの設定に適しています。 2。更新フェーズには、render()が含まれてUIを再レンダリングします。 ComponentDidupdate(PrevProps、Prevstate)は、状態の変更に従って新しいデータを取得するなど、副作用操作を処理するために使用されます。 3.アンインストールフェーズはcomponentwillunmount()です。これはタイマーのクリーニングに使用されます

重要なポイントについて直接話しましょう。リソースのマージ、依存関係の削減、およびキャッシュの利用は、HTTP要求を減らすためのコア方法です。 1. CSSとJavaScriptファイルをマージし、構築ツールを通じて生産環境のファイルをマージし、開発モジュラー構造を保持します。 2。画像スプライトまたはインラインBase64画像を使用して、静的な小さなアイコンに適した画像要求の数を減らします。 3.ブラウザのキャッシュ戦略を設定し、リソースのロードをCDNで加速してリソースの読み込みを高速化し、アクセス速度を向上させ、サーバー圧力を分散させます。 4.読み込み= "lazy"または非同期ロードスクリプトの使用など、非批判的なリソースの読み込みを遅らせ、初期リクエストを削減し、ユーザーエクスペリエンスに影響を与えないように注意してください。これらの方法は、特にモバイルまたは貧弱なネットワークで、パフォーマンスの読み込みを大幅に最適化できます

フロントエンドでは、その動作環境が複雑で変更可能であり、問題を再現することは困難であるため、ログと監視が必要です。ログはすぐに問題を見つけ、エクスペリエンスを最適化できます。 1.一般的なログタイプには、エラーログ(JSエラーレポート、リソース読み込み障害)、動作ログ(ユーザー操作パス)、パフォーマンスログ(読み込み時間、FP、FCP)、カスタムログ(ビジネスポイント)が含まれます。 2.フロントエンド監視を実装する手順には、キャッチングの例外、パフォーマンスデータの収集、ログの報告、集中管理、ディスプレイが含まれ、ユーザープロセスを追跡するための一意の識別子をもたらすことをお勧めします。 3.実際に使用すると、過剰な収集、プライバシー保護、誤った凝集、およびSourceMapを組み合わせてスタック情報を解析して問題を正確に見つけることを避けるために注意を払う必要があります。
