最近、図に示すように、プロジェクトのデプロイ時にいくつかの問題が発生しました。
通常のログイン インターフェイスにはアクセスできますが、ログイン後、アクセス後のアドレスが表示されます。 404 エラーが報告されるため、設定エラーがないか確認しましたが、確認したところ、2 つの設定ファイル nginx.conf と config.js# の IP とポートが間違っていることがわかりました。 ## は正しかったです
このプロジェクトは何度もデプロイされていますが、そのようなエラーは発生していません。 これは、nginx.conf のオリジナルの解凍されたソース ファイルです。
ip とリスニング ポート
listen は ポートに対応し、server_name は Accessedip に対応します
#しかし、これでは問題は解決しません。次の文を追加する必要があります。
try_files $uri $uri/ /index.html;追加された場所はここであるはずです
#これを
の location セクションに追加し、restart nginx次のディレクトリに追加します。
nginx.exeがあるので、アドレス バーをクリックして cmd と入力します。cmd を開いてジャンプすることなく、ディレクトリ内で直接コマンド ラインを開始できます。 #これまでに nginx サービスを閉じていない場合は、まずサービスを停止してから開きます。閉じている場合は、コマンドを直接入力してサービスを開始できます
nginx サービス コマンドの停止:
nginx -s stopnginx サービス コマンドの開始:
start nginxホット デプロイメント nigx サービス コマンド:
(ただし、このコマンドの使用はお勧めしません。時々このコマンドが機能しないことがあります。停止して直接起動することをお勧めします)
nginx -s reloadnginx を再起動した後ブラウザのキャッシュをクリアするのが最善ですもう一度テストしてください
Ctrl Shift Del
を直接押してください。ブラウザ ウィンドウでキャッシュ クリア ダイアログ ボックスを直接開きます。
再テストすると、通常どおりアクセスできます。
補足: Nginx のデプロイ後、通常のクリックでは問題ありません。ページを更新すると 404 問題が発生します。
プロジェクトをサーバーにデプロイした後は、ルート パス (http:10.10.10.10) へのアクセスには問題ありませんが、
http:10.10.10.10/test /test/test など、他の関数を入力してページを更新すると、404 が表示されます。ページを更新すると、nginx にリダイレクト ジャンプを追加していないため、404 が表示されます。構成。 解決策として、次の構成を追加するだけです:
try_files $uri $uri/ /index.html;
server { listen 80; server_name 127.0.0.1; location / { root /data/htdocs/FactoryModel/micro-front-end/industrial-internet-platform-main-vue; index index.php index.html index.htm; # add_header Cache-Control; add_header Access-Control-Allow-Origin *; if ( $request_uri ~* ^.+.(js|css|jpg|png|gif|tif|dpg|jpeg|eot|svg|ttf|woff|json|mp4|rmvb|rm|wmv|avi|3gp)$ ){ add_header Cache-Control max-age=7776000; add_header Access-Control-Allow-Origin *; } try_files $uri $uri/ /index.html; } }
この構成は、対応する静的リソースが見つからない場合にすべての一致を意味しますURL パスで、変調して、index.html ファイルにジャンプします。
示されているように、ここに追加できます。
次の内容では、ルーター ルーティングの動作原理とその原理を少し理解する必要があります。 nginx の
これが発生する理由の分析 (履歴モードでのルーティングの場合):
最初に質問してください:
1. を更新するときにこの問題が発生するのはなぜですかページ (設定なし、ホームページのルート ディレクトリの更新ではありません)2. クリックしてジャンプすると (時々) 問題が発生するのはなぜですか
次に、問題を解決しましょう:1ブラウザ上の URL が 172.1.2.3:7000/test であると仮定します。ページを更新すると、ブラウザ上の URL に従って、対応する静的リソースがサーバー (nginx) に要求されます。nginx は、対応する静的リソースを見つけられませんでした。場所/ファイル「test」の一致ルールに従って、dist フォルダー内の静的リソースが返されるため、404 が返されますが、これは妥当です。
この時点で、index.html ファイルにリダイレクトして戻るように try_files を設定します。つまり、ホームページ「/」に戻ります。この時点でページが更新されていることに注意してください。 vue-router は routing. 動作すると、現在の URL アドレスに基づいてコンポーネントが照合されるので、この時点で URL が対応するコンポーネントとなり、ページがリロードされて完了です。
2. 2 番目の質問は、クリックしてジャンプする場合とそうでない場合があるのはなぜですか? ジャンプには 2 つの状況があることを知っておく必要があります: 1 つはページの更新 (最初の質問に属する)、もう 1 つはページの更新です。ジャンプではなくリフレッシュしてください。これはコードの記述方法によって異なります。覚えておいてください:
1. プッシュではページは更新されませんが、react-router であっても vue であっても、ブラウザー上の URL ルーティングの変更のみが変更されます。 -router。これらはすべて、pushState() という HTML API を使用して実装されています。2. 渡すと、タグに相当するページが更新されます。
ブラウザで試すことができます。自分自身そのため、クリックしてジャンプするときに、コードでプッシュ (更新ではなく) が使用されることもあれば、タグまたはリンク (更新) が使用されることもあり、この問題が発生します。
以上がNginx 404エラーの解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Nginxは、Webサイトのパフォーマンス、セキュリティ、およびスケーラビリティを改善するために使用できます。 1)逆プロキシおよびロードバランサーとして、Nginxはバックエンドサービスを最適化し、トラフィックを共有できます。 2)イベント駆動型および非同期アーキテクチャを通じて、nginxは高い並行接続を効率的に処理します。 3)構成ファイルでは、静的ファイルサービスやロードバランシングなどのルールの柔軟な定義を可能にします。 4)最適化の提案には、GZIP圧縮の有効化、キャッシュの使用、およびワーカープロセスの調整が含まれます。

Nginxunitは複数のプログラミング言語をサポートし、モジュラー設計を通じて実装されています。 1。言語モジュールの読み込み:構成ファイルに従って対応するモジュールをロードします。 2。アプリケーションの起動:呼び出し言語が実行されたときにアプリケーションコードを実行します。 3。リクエスト処理:リクエストをアプリケーションインスタンスに転送します。 4。応答返品:処理された応答をクライアントに返します。

NginxとApacheには独自の利点と短所があり、さまざまなシナリオに適しています。 1.Nginxは、高い並行性と低リソース消費シナリオに適しています。 2。Apacheは、複雑な構成とリッチモジュールが必要なシナリオに適しています。コア機能、パフォーマンスの違い、ベストプラクティスを比較することで、ニーズに最適なサーバーソフトウェアを選択するのに役立ちます。

質問:nginxを開始する方法は?回答:nginxスタートアップnginx検証nginxはnginxを開始しました他のスタートアップオプションを自動的に開始

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

NGINXサービスをシャットダウンするには、次の手順に従ってください。インストールタイプを決定します:Red Hat/Centos(SystemCtl Status Nginx)またはDebian/Ubuntu(Service Nginx Status)サービスを停止します:Red Hat/Centos(SystemCtl Stop Nginx)またはDebian/Ubuntu(Service Nginx Stop)無効自動起動(オプション):Debuntos/Centos/Centos/Centos/Centos/Centos (syst

Windowsでnginxを構成する方法は? nginxをインストールし、仮想ホスト構成を作成します。メイン構成ファイルを変更し、仮想ホスト構成を含めます。 nginxを起動またはリロードします。構成をテストし、Webサイトを表示します。 SSLを選択的に有効にし、SSL証明書を構成します。ファイアウォールを選択的に設定して、ポート80および443のトラフィックを許可します。

サーバーには、要求されたリソースにアクセスする許可がなく、NGINX 403エラーが発生します。ソリューションには以下が含まれます。ファイル許可を確認します。 .htaccess構成を確認してください。 nginx構成を確認してください。 SELINUXアクセス許可を構成します。ファイアウォールルールを確認してください。ブラウザの問題、サーバーの障害、その他の可能なエラーなど、他の原因をトラブルシューティングします。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

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

WebStorm Mac版
便利なJavaScript開発ツール

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