検索
ホームページ運用・保守NginxLinuxサーバーにTomcatとNginxをデプロイする方法

1. 準備

まず、再生可能な Linux サーバーがあり、ユーザー名とパスワードがわかっている必要があり、次に、Windows コンピューターに 2 つの Linux サーバーをインストールする必要があります。 xshell 5 と xftp 5 のツールについては、インストール チュートリアルには入りません。補足の図は、サーバーへの接続方法を示しています:

xshell 接続インターフェイスは次のとおりです。ホスト IP を入力して「OK」をクリックすると、xshell がユーザー名とパスワードを入力するウィンドウをポップアップ表示します。接続は成功しました。

LinuxサーバーにTomcatとNginxをデプロイする方法

xftp 接続インターフェイスは次のとおりです。空白を埋めるだけです。非常に簡単です。詳細は説明しません。なぜ sftp の代わりに sftp が選択されるのかについて説明します。 ftpはこちら. ftpとsftpの違いを見る. これだけあれば十分理解できる!

LinuxサーバーにTomcatとNginxをデプロイする方法

# 2. インストールと展開作業

# プロジェクトを Linux サーバーに展開する場合は、次のインストールが不可欠です。 jdk と tomcat はい、ここで強調したいのは、tomcat の構成はアプリケーションごとに明らかに異なるため、1 つのサーバーに複数のアプリケーションをデプロイする場合は、アプリケーションごとに独自の Tomcat が必要であるということです。 , tomcatのインストールディレクトリとtomcatの作業ディレクトリを複数のアプリケーション配下にインストールすることができます. 同じ部分については, tomcatのインストールディレクトリを共有することができます. ここではtomcatとjdkをサーバー上にインストールする方法と操作方法を詳しく紹介します

1. ディレクトリの分割

これは非常に重要なステップですので、下図のように新しいディレクトリを作成します。いくつかの関連ファイルにアクセスすると、このディレクトリに複数のバージョンの jdk と複数のバージョンの Tomcat が配置されていることがわかります。プロジェクトのデプロイメント プロセス中にどの Tomcat と jdk を使用するかは、設定​​によって実現できます。

LinuxサーバーにTomcatとNginxをデプロイする方法

実際のアプリケーションの場合は、インスタンス ディレクトリに配置し、各アプリケーションの名前を設定し、対応する war パッケージをそのディレクトリ下に配置して解凍します。次のように、Tomcat がディレクトリを読み取り、アプリケーションをデプロイするのを待ちます:

LinuxサーバーにTomcatとNginxをデプロイする方法LinuxサーバーにTomcatとNginxをデプロイする方法

2. 構成を変更します

また、以下に示すように、管理を容易にするために、Tomcat を各アプリケーションの下のディレクトリに配置しますが、各 Tomcat の構成に注意する必要があります

LinuxサーバーにTomcatとNginxをデプロイする方法LinuxサーバーにTomcatとNginxをデプロイする方法

/bin start.sh ファイルと stop.sh ファイルの両方を変更する必要があります。まず、jdk パスを指定する必要があります。これは、環境変数の設定と同様です。2 番目のステップは、Tomcat 作業ディレクトリの Tomcat パスを指定することです。 catalina_home と catalina_base がそれぞれ tomcat のインストール ディレクトリと作業ディレクトリに対応していることがわかり、最後の行から、プロジェクトの起動ではインストール ディレクトリの下の start.sh が使用されますが、プロジェクトの起動には tomcat 設定ファイルが使用されることがわかります。各アプリケーション Tomcat によって設定される設定ファイルです。 stop.sh についても同様です。

LinuxサーバーにTomcatとNginxをデプロイする方法

xshell を使用して ./start.sh および ./stop.sh を実行するには、権限が必要です。権限がない場合は、xftp を使用して開始メッセージを電子メールで送信できます。 .sh 権限を変更するには、図に示すようにボックスをチェックします。

LinuxサーバーにTomcatとNginxをデプロイする方法

/conf ディレクトリ配下の、server.xml ファイルの設定変更に注意してください 対応するポート番号を変更してください tomcat の各アプリケーション別の設定を変更する必要があります。ポート番号を指定しないと、複数の Tomcat を起動するときにポートが占有され、起動できません。このアプリケーション用に設定された Tomcat のポート番号を覚えておくことをお勧めします。これは、後でポート マッピングに nginx を使用するときに使用されます。 ;

LinuxサーバーにTomcatとNginxをデプロイする方法

変更が必要なもう 1 つの場所は、catalina ディレクトリの下の localhost ディレクトリにある root.xml ファイルです。このファイルは、プロジェクトをロードするディレクトリを指定するために使用されます。 Tomcat の起動時のインスタンス。

LinuxサーバーにTomcatとNginxをデプロイする方法

他の /logs ディレクトリ、/temp ディレクトリ、/webapps ディレクトリ、および /work ディレクトリは変更する必要はありません。上記からわかるように、ディレクトリの分割は非常に明確であり、サービスのインストールに分割されています。ディレクトリ (jdk、tomcat、nginx など)、アプリケーション インスタンス ディレクトリ、アプリケーション デプロイメント ディレクトリ Linux サーバーを使用して複数のプロジェクトをデプロイする場合、この方法でこれらを分割することもできます。

3.nginx はポート 80 リバース プロキシを実装します

論理的に言えば、この時点で独自のアプリケーションの war パッケージを対応するディレクトリに転送して解凍できます。次に、対応するアプリケーションの Tomcat 作業ディレクトリに移動し、./start.sh を実行してプロジェクトを開始します。まずは試してみるのもいいかもしれません。

プロジェクトがデプロイされた後、ホストを構成してアクセスを開始します。このとき、アクセスする前に、上で構成した Tomcat ポート番号を追加する必要があることがわかります。ポート番号を追加できないことはできますか? (デフォルトのポート 80 はどうですか)?上で述べたように、異なる Tomcat に対して異なるポート番号を設定しました。その理由は、1 つのポート番号は 1 つの Tomcat でのみ使用できるためです。つまり、プロジェクト アクセスではアクセス用のポート番号を追加する必要があります。ただし、それはプロジェクトごとに行う必要があります。アプリケーションがアクセスにポート 80 を使用することも可能です。これは、nginx が使用される場合です。nginx をインストールした後、リバース プロキシを実現するためにいくつかの構成を追加し、さまざまなアプリケーションで使用されるポート 80 へのアクセスを対応するポート番号に転送できます。 Tomcat の観点から見ると、外部リクエストは Tomcat によって設定されたポート番号を引き続き使用するため、目的の効果が得られます。具体的な設定は次のとおりです (もちろん、対応するディレクトリ分割作業も行う必要があります):

nginx ディレクトリは次のとおりです:

LinuxサーバーにTomcatとNginxをデプロイする方法

/conf ディレクトリにある nginx.conf 構成ファイルについてのみ注意する必要があります。また、全員に向けた特定の構成情報も公開しました最後の行「include Domains/*」に気づきましたか?これは、構成がまだ完了しておらず、/domains ディレクトリ

LinuxサーバーにTomcatとNginxをデプロイする方法

# にあるすべての構成ファイルが含まれていることを意味します。 ## この時点では、各アプリケーションに対応する nginx 構成は、異なる名前のファイルで構成できます。

LinuxサーバーにTomcatとNginxをデプロイする方法# 次に、それを構成してオークションをリッスンする方法を見てみましょう。 center.jd.net :80 ドメイン名にアクセスし、ローカル マシンの 127.0.0.1 の 1605 ポート アクセスに転送される設定からも、http_500 http_502 http_504 などの異常な状態が発生していることがわかります。通常の状況では、Web サイトのホームページなどにジャンプして、ログを記録できます。この設定ファイルを設定した後、新しいログ ディレクトリを作成することを忘れないでください。そうしないと、nginx が見つけることができません。ディレクトリに保存され、起動時にエラーが報告されます。

LinuxサーバーにTomcatとNginxをデプロイする方法 これらのタスクを完了しても、まだ完了していません。nginx を再起動する必要があります。再起動方法については詳しく説明しません。関連する内容がたくさんあります。再起動に失敗した場合は、nginx プロセスを強制終了し、nginx service start コマンドを使用して nginx サービスを開始します。

これらの作業が完了したら、使い慣れた方法 (ポート番号を追加せずに) でアクセスできますか? はい、その通りです。まだアクセスできるかどうかを心配している人も多いでしょう。Tomcat を再起動し、アプリケーションを再デプロイする場合、それはネットワーク層の nginx ルーティング変換層を理解していないことを意味するだけです。最初に訪問するドメイン名は、設定したホストを通じて DNS 解決を実行し、対応する IP に変換し、対応するサーバーを見つけます。サーバーのファイアウォールを介して ip. を取得し、サーバー上で nginx を設定すると、nginx は最初にリクエストをインターセプトし、リクエストを処理して配布し、最後に対応する Tomcat にヒットします (個人的な理解です。理解が適切ではないかもしれませんが、スプレーしないでください)、現時点では、ドメイン名にアクセスして、自信を持ってリクエストを送信できます。 !

4. 罠に足を踏み入れましょう

うーん。 。良くない! !嬉しくてホームページに飛んだのですが、やはり指定したアプリケーションにアクセスできず、ポート番号を追加してみたら「奇跡的に」アクセスできました。つまり、設定したnginxが反映されていないということです。問題は??

さて、私の問題解決のアイデアについてお話します。まず、すべてのリクエストが nginx に送信されたことを確認する必要があります。この時点で、ログの利点が反映されます。ポート 80 を使用してアプリケーションにアクセスするとき、じっと見つめてください。一度、二度、三度、丸太を見てください。 。ログがありません。現時点では、nginx サービスがまったく使用されていないと大まかに結論付けることができます。nginx サービスがサーバー上で有効になっていないと確信することはできません。ログの設定に問題がある可能性があります。この時、nginxサービスへのアクセスをオフにするか、Webサイトのトップページに飛ぶという大胆な操作を行ったのですが、どうなっているのでしょうか?ホームページへのジャンプはnginxで設定されていませんか?確かに、同社はすでにネットワーク層でこの問題に対処していました。この時点では、私は非常に混乱していました。さまざまな試みを行っただけでした。Tomcat の構成を変更して、アプリケーションの 1 つをポート 80 に構成することも考えられます。すぐに変更が完了しました。デプロイ後は、アドレスバーにドメイン名が入力されるのを待ってアクセスしました。nginx サービスは終了しているため、この時点でのリクエストは行われませんでしたTomcatに直接送信する必要があります。1回、2回、3回アクセスしましたが、奇跡的にアクセスできませんでした。ニ? ? ?このとき、サーバーのファイアウォールがポート 80 を無効にしているに違いないとひらめき、すぐにローカルで 192.168.108.37 80 に Telnet してみましたが、アクセスできないことがわかり、私の推測が正しかったことがわかりました。これで処理は簡単になりました。ファイアウォールで有効にするだけで済みました。ポート 80 へのアクセスで十分です。以下は、centos でポート 80 を開くように iptables ファイアウォールを設定する方法についての補足です。

1. iptables 構成ファイルを開きます。コードは次のとおりです。 vi /etc/sysconfig/iptables

2. /etc/init.d/iptables status コマンドを使用して、ポート 80 が開いています。そうでない場合は、それを処理する 2 つの方法があります。

3. 最初の方法: vi /etc/sysconfig/iptables コマンドを変更して、ポート 80 を開くようにファイアウォールを追加します。コードは次のとおりです。次のようになります:

コードをコピーします コードは次のようになります:

-a rh-firewall-1-input -m state --state new -m tcp -p tcp --dport 80 -j accept

4. 閉じる/開く/再起動 ファイアウォールのコードは次のとおりです: /etc/init.d/iptables stop (#start to open, #restart to restart)

5. 2 番目の方法: コマンドを使用してポートを追加します。コードは次のとおりです:

[root@centos httpd]# /sbin/iptables -i input -p tcp --dport 80 -j accept
[root@centos httpd]# /etc/rc.d/init.d/iptables save
[root@centos httpd]# /etc/init.d/iptables restart

6. 効果を確認します: [root@centos httpd]# /etc/init.d/iptables status

7また、操作が簡単で成功率が高い 2 番目の方法を使用することをお勧めします。たとえば、最初の方法を使用してファイアウォールの構成を変更すると、再起動に失敗しますが、 2 番目の方法は完全に成功します

以上がLinuxサーバーにTomcatとNginxをデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は亿速云で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
Nginxの主な機能:パフォーマンス、スケーラビリティ、セキュリティNginxの主な機能:パフォーマンス、スケーラビリティ、セキュリティApr 13, 2025 am 12:09 AM

Nginxは、イベント駆動型のアーキテクチャと非同期処理機能を通じてパフォーマンスを向上させ、モジュラー設計と柔軟な構成を通じてスケーラビリティを向上させ、SSL/TLSの暗号化と要求レートの制限を介してセキュリティを改善します。

Nginx vs. Apache:Webホスティングとトラフィック管理Nginx vs. Apache:Webホスティングとトラフィック管理Apr 12, 2025 am 12:04 AM

Nginxは、高い並行性と低リソース消費シナリオに適していますが、Apacheは複雑な構成と機能的拡張を必要とするシナリオに適しています。 1.Nginxは、高性能と多数の同時接続を処理することで知られています。 2。Apacheは、その安定性とリッチモジュールのサポートで知られています。選択するときは、特定のニーズに基づいて決定する必要があります。

NGINX:最新のWebアプリケーション用の汎用ツールNGINX:最新のWebアプリケーション用の汎用ツールApr 11, 2025 am 12:03 AM

nginxisentialformodernwebapplicationsdueToitsRolesasareverseproxy、loadbalancer、andwebserver、weberporformanceandscalability.1)itactsasaReverseproxy、拡張、およびパフォーマンスを強化し、パフォーマンスを強化し、積極的に積極的なものを増やします

nginx SSL/TLS構成:HTTPSでWebサイトを保護しますnginx SSL/TLS構成:HTTPSでWebサイトを保護しますApr 10, 2025 am 09:38 AM

NGINXを通じてWebサイトのセキュリティを確保するには、次の手順が必要です。1。基本的な構成を作成し、SSL証明書と秘密鍵を指定します。 2。構成を最適化し、HTTP/2を有効にし、OCSPSTAPLING。 3.証明書パスや暗号化スイートの問題などの一般的なエラーをデバッグします。 4。let'sencryptの使用やセッションの多重化など、アプリケーションのパフォーマンス最適化の提案。

Nginxインタビューの質問:DevOps/System管理インタビューをAceNginxインタビューの質問:DevOps/System管理インタビューをAceApr 09, 2025 am 12:14 AM

Nginxは、高性能のHTTPおよびリバースプロキシサーバーであり、高い並行接続の取り扱いに優れています。 1)基本的な構成:ポートを聞いて静的ファイルサービスを提供します。 2)高度な構成:逆プロキシとロードバランシングを実装します。 3)デバッグスキル:エラーログを確認し、構成ファイルをテストします。 4)パフォーマンスの最適化:GZIP圧縮を有効にし、キャッシュポリシーを調整します。

nginxキャッシュテクニック:ウェブサイトのパフォーマンスの向上nginxキャッシュテクニック:ウェブサイトのパフォーマンスの向上Apr 08, 2025 am 12:18 AM

Nginxキャッシュは、次の手順を通じてWebサイトのパフォーマンスを大幅に改善できます。1)キャッシュ領域を定義し、キャッシュパスを設定します。 2)キャッシュ有効期間を構成します。 3)異なるコンテンツに従って異なるキャッシュポリシーを設定します。 4)キャッシュストレージと負荷分散を最適化します。 5)キャッシュ効果を監視およびデバッグします。これらの方法により、Nginxキャッシュはバックエンドサーバーの圧力を軽減し、応答速度とユーザーエクスペリエンスを向上させることができます。

Dockerを使用したNginx:コンテナ化されたアプリケーションの展開とスケーリングDockerを使用したNginx:コンテナ化されたアプリケーションの展開とスケーリングApr 07, 2025 am 12:08 AM

DockerComposeを使用すると、Nginxの展開と管理が簡素化され、DockerswarmまたはKubernetesをスケーリングすることは一般的な慣行です。 1)DockerComposeを使用してNginxコンテナを定義および実行する、2)DockerswarmまたはKubernetesを介してクラスター管理と自動スケーリングを実装します。

Advanced Nginx構成:マスタリングサーバーブロックとリバースプロキシAdvanced Nginx構成:マスタリングサーバーブロックとリバースプロキシApr 06, 2025 am 12:05 AM

nginxの高度な構成は、サーバーブロックとリバースプロキシを介して実装できます。1。サーバーブロックにより、複数のWebサイトを1つの場合に実行することができます。各ブロックは個別に構成されます。 2.逆プロキシは、リクエストをバックエンドサーバーに転送して、負荷分散とキャッシュアクセラレーションを実現します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール