ホームページ >バックエンド開発 >PHPの問題 >nginx がindex.phpを見つけられない問題を解決するためのステップバイステップを説明します。

nginx がindex.phpを見つけられない問題を解決するためのステップバイステップを説明します。

PHPz
PHPzオリジナル
2023-04-25 16:13:402617ブラウズ

Nginx は、インターネット業界で広く使用されている高性能 Web サーバーおよびリバース プロキシ サーバーです。ただし、Nginx を使用している場合、index.php ファイルが見つからないという問題が発生する場合があります。これにより、Web サイトにアクセスできなくなり、会社のビジネスや Web サイトのユーザー エクスペリエンスに影響が及ぶ可能性があります。この記事では、nginx がindex.php を見つけられない問題に対する段階的な解決策について説明します。

1. ファイル パスを確認する

nginx がindex.php ファイルを見つけられない場合は、まずファイル パスが正しいかどうかを確認します。 nginx 構成ファイルでは、サイトのルート ディレクトリであるルート ディレクトリを構成する必要があります。サイトのルート ディレクトリが正しく構成されていない場合、nginx はindex.php ファイルを見つけることができません。したがって、まずサイトのルート ディレクトリが正しく構成されているかどうかを確認する必要があります。

方法は次のとおりです:

  1. nginx 構成ファイルを開いてサーバー ブロックを見つけます;
  2. サーバー ブロックでコマンド ルートを見つけます;
  3. rootコマンドの確認 指定しているディレクトリは正しいですか?

たとえば、サイトのルート ディレクトリが /var/www/html ディレクトリにある場合、nginx 構成ファイルは次の構成になる必要があります:

server {
    listen       80;
    server_name  xxx.com;
    root         /var/www/html;
    index        index.php index.html index.htm;
}

この場所が指定された後それでもindex.phpファイルにアクセスできない場合は、さらに検索する必要があります。

2. Nginx の PHP パーサー設定を確認する

Nginx の PHP パーサー設定が正しく設定されているかどうかを確認します。 Nginx 構成ファイルには、次のような行ステートメントがあります。

location ~ \.php$ {
  try_files $uri =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass localhost:9000;
  fastcgi_index index.php;
  include fastcgi_params;
}

ステートメントが正しく構成されていない場合、Nginx は、index.php ファイルを正しく見つけることができません。

具体的な構成手順は次のとおりです:

  1. 次の指示が正しく設定されているかどうかを確認してください:
root         /var/www/html;
index        index.php index.html index.htm;
  1. PHP パーサー構成を見つけますNginx の:
location ~ \.php$ {
  try_files $uri =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass localhost:9000;
  fastcgi_index index.php;
  include fastcgi_params;
}

このうち、fastcgi_pass は指定した PHP インタプリタのアドレスとポート番号、fastcgi_index は PHP ファイルにアクセスするときにデフォルトで検索されるファイル名です。たとえば、上記の設定は、index.php ファイルを検索するためのものです。

3. PHP-FPM 設定を確認する

nginx 設定ファイルに加えて、PHP-FPM 設定ファイルも確認する必要があります。 PHP インタープリターが PHP ファイルを解釈できない場合、Nginx はindex.php ファイルを見つけることができません。

具体的な構成手順は次のとおりです。

  1. PHP-FPM 構成ファイルを開きます。
sudo vi /usr/local/etc/php-fpm.conf
  1. 次の手順を確認してください。 PHP-FPM 設定ファイル 設定が正しいかどうか:
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 2
pm.max_spare_servers = 8

上記の手順はすべて PHP-FPM のパフォーマンス チューニング手順です。これらの命令を適切に変更することで、PHP-FPM のパフォーマンスを向上させることもできます。

4. PHP インストールの問題

nginx 設定ファイル、Nginx PHP パーサー設定、および PHP-FPM 設定がすべて正しいにもかかわらず、index.php ファイルが見つからない場合は、 PHP が正常にインストールされていないため、可能です。

次のコマンドを実行して、PHP が正常にインストールされているかどうかを確認できます:

php -v

PHP が正常にインストールされていない場合は、次の手順に従ってインストールできます:

  1. インストール PHP:
sudo apt-get update
sudo apt-get install php-fpm
  1. PHP-FPM 実行ユーザーを www-data として設定します:
sudo vim /usr/local/etc/php-fpm.d/www.conf

ユーザーとグループ項目を見つけて変更します。 www-data に。

  1. PHP-FPM サービスを再起動します:
sudo systemctl restart php-fpm

上記の手順を完了したら、nginx 構成ファイル、Nginx PHP パーサー構成、および PHP-FPM 構成をチェックして確認します。パラメータが正しく設定されていれば、index.php ファイルが見つからないという問題は発生しなくなります。

概要

Nginx を使用している場合、index.php ファイルが見つからないという問題は、ビジネスに一定の影響を与える可能性があります。ただし、この問題は上記の手順を確認するだけですぐに解決できます。もちろん、Nginx が URL リクエストをより柔軟に処理し、Web アプリケーションのパフォーマンスと可用性を向上できるように、Nginx の URL ルーティングを構成することもできます。

以上がnginx がindex.phpを見つけられない問題を解決するためのステップバイステップを説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。