Nginx サーバーで URL リンクを設定する方法

Nginx サーバーで URL リンクを設定する方法

LNMPのようなアーキテクチャを持つウェブサイトは、一般的にPHPフレームワークに基づいて開発されています。PHPフレームワークは一般的にエレガントなリンクを重視しています。たとえば、Laravel、CodeIgniter、ThinkPHPなどはすべてこのリンクモードをサポートしています。これは、サーバー構成ではURL書き換えとも呼ばれます。現在、ほとんどのフレームワークは単一のエントリindex.phpを使用し、MVCモードに基づいて、一般的に/index.php/Model/functionのリクエストメソッドです。したがって、index.phpエントリファイルを削除することができれば、URL全体がシンプルで美しく見え、Python、Javaなどで開発されたウェブサイトのURLモードが統一されます。ApacheとnginxはどちらもこのURLモードをサポートしています。以下はnginxの構成方法です。

まず、nginx のインストール ディレクトリに入ります。前回の記事で、設定ファイル nginx.conf には、サイトの設定を指定するための server {} などのコード セグメントがあることを説明しました。その他にも多くの設定があります。URL 書き換えを実装するには、設定ファイルまたはインクルードされた設定ファイルの対応する server {} コード セグメントに次のコードを追加します。

  位置 / {
    try_files $uri $uri/ /index.php?$query_string;
  } 

元の location / {} コードがすでに存在する場合は、図のコード行を追加するだけです。同じルートの設定は通常まとめられているためです。保存後、nginx サーバーを再起動して有効にします。サービスに nginx が追加されている場合は、/etc/init.d/nginx restart を使用して再起動できます。再起動後、URL が整頓されます。

インターネット上の URL を書き換える別の方法があります。同じ場所に次のコードを追加して解決します。

位置 / {
    if (!-e $request_filename) {
      ^(.*)$ /index.php?s=$1 を最後に書き換えます。
      壊す;
    }
  }

保存後、nginx を再起動すると、URL 美化の効果も得られます。ただし、インターネット上のいくつかの記事によると、URL 美化には最初の方法が推奨されています。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Ubuntu 18.04 で Nginx+RTMP+HLS+HTTPFLV サーバーを構成してオンデマンド/ライブ ブロードキャスト/録画機能を実現する方法の詳細説明
  • Ubuntu 14 に Nginx-RTMP ストリーミング サーバーをインストールするチュートリアル
  • Nginx-rtmp はライブメディアのリアルタイムストリーミング効果を実現します
  • Nginxはnginx-rtmp-moduleモジュールを使用してライブブロードキャストルーム機能を実現します。
  • Mac で nginx+rtmp ライブ サーバーを構築するための詳細な手順
  • nginxでイメージサーバーを構築する手順の詳しい説明(ルートとエイリアスの違い)
  • Nginxを使用してストリーミングメディアサーバーを構築し、ライブブロードキャスト機能を実現する
  • Linux サーバー上のローカル静的リソースにアクセスするために nginx を使用する方法
  • Nginx は rtmp ライブ サーバーの実装コードを構築します

<<:  JavaScript でグレイウルフのポットビーティングゲームを実装

>>:  MySQL 8.0 の降順インデックス

推薦する

メタビューポートはiPhoneでウェブページをフルスクリーン表示コントロールします

困り果てて、ふと、私がよく行くSinaのタッチスクリーン版はどうやって作られているのだろう?と考えま...

MySQLをインストールして設定し、ルートパスワードを変更する方法

1. インストールapt-get install mysql-server にはアカウントとパスワー...

Centos7 での NFS サービス構築の紹介

目次1. サーバー2. クライアント3. テストサービス1. サーバー1. YUMソースを使用してN...

xHTML タグと HTML タグの違いは何ですか?

すべてのタグは小文字でなければなりませんXHTML では、すべてのタグは小文字でなければなりません。...

Linux centos7 環境での MySQL インストール チュートリアル

Linux centos7 環境に MySQL をインストールする手順の詳細な紹介MySQLをインス...

数ステップでサイバーパンク2077風の視覚効果を実現するCSS

背景記事を始める前に、賽博朋克とは何か、賽博朋克2077とは何かを簡単に理解しましょう。サイバーパン...

MySQLで日付を比較する方法の詳細な説明

データ型が datetime であるフィールド add_time を持つテーブル product が...

docker を使って sonarqube を構築する方法

目次1. Dockerをインストールする2. ソナーイメージをインストールする3. ソナーを使ってコ...

docker pruneコマンドは、あまり使用されないデータを定期的にクリーンアップするために使用できます。

目次docker システム df docker システム プルーンNoneオブジェクトをクリーンアッ...

MySQL データベースの 1045 エラーの解決方法

ローカル データベースがサーバー データベースに接続されているときに発生する 1045 の問題を解決...

Vueナンバープレート検索コンポーネントの使い方の詳しい説明

参考までに、シンプルなナンバープレート入力コンポーネント(vue)です。具体的な内容は次のとおりです...

Docker で Ubuntu に Python3 と Pip をインストールする際の問題

文章1) Ubuntuイメージをダウンロードする docker プル Ubuntu 2) 画像を見る...

ReactでCSSをエレガントに書く方法

目次1. インラインスタイル2. インポート方法を使用する3.cssモジュールのエクスポート4. ス...

MySQL の concat 関数についての簡単な説明。MySQL でフィールドの前または後に文字列を追加する方法

MySQL で concat 関数を使用する方法: CONCAT(文字列1、文字列2、…)戻り値は、...

Vueはプルダウンとスクロールでデータを読み込む例を実装しています

目次ステップ1: インストールステップ2: 引用ステップ3: 使用Webプロジェクトでは、データを読...