最近、thinkphp フレームワークを使用してプロジェクトを開発しているときに、IP ポートにアクセスできないという問題が発生しました。調査の結果、nginxの設定の問題が原因であることが判明したので、この記事ではこの問題の解決方法を詳しく紹介します。
まず、具体的な問題の兆候を見てみましょう。 Web ページに http://IP アドレス:ポート番号を入力すると、ページの読み込みが続き、最終的に「サーバーに接続できません」というエラー メッセージが表示されます。この時点で、最初に行う必要があるのは、サーバー構成が正しいかどうかを確認することです。
まず、サーバーが指定したポートでリッスンしているかどうかを確認する必要があります。次のコマンドを使用して確認できます。
$ netstat -tunlp | grep 端口号
ポート番号が見つかった場合は、そのポートがすでに占有されていることを意味します。そうでない場合は、ポートが正しく構成されていません。
ポートがすでに占有されている場合は、ファイアウォール構成を確認する必要があります。一部のセキュリティ設定では特定のポートへのアクセスが禁止されており、指定されたポートにアクセスできなくなります。次のコマンドを使用して表示できます:
$ firewall-cmd --list-all
このコマンドは、開いているポートをすべてリストします。指定したポートが見つからない場合は、アクセスを許可するファイアウォール ルールを追加する必要があります。
ファイアウォールに問題がない場合は、nginx 設定が正しいかどうかを確認する必要があります。通常、最初にサーバーのパブリック IP アドレスにアクセスして、アクセスできるかどうかを判断する必要があります。アクセスできる場合は、リスニング IP アドレスとポートが nginx 構成ファイルで正しく指定されているかどうかを確認する必要があります。
nginx 構成ファイルでは、リスニング アドレスとポートを設定する必要があります。正しい設定方法は次のとおりです。
server { listen 端口号; server_name 客户端IP地址; location / { root 资源目录; index index.html index.htm; } }
「ポート番号」と「クライアントIPアドレス」は、実際の状況に応じて入力する必要があります。
上記の手順で問題が解決しない場合は、php-fpm 構成が正しいかどうかを確認する必要があります。 php-fpm は、PHP コードをサーバーで実行できるコードに変換する PHP インタープリターです。 php-fpm が正しく設定されていない場合、アクセスできないエラーが発生します。
php-fpmの設定ファイルでは、リスニングアドレスとポートを設定する必要があります。正しい設定方法は次のとおりです。
listen = 客户端IP地址:端口号
nginx 設定ファイルで localhost または 127.0.0.1 を設定した場合、php-fpm のリスニング アドレスもそれに応じて変更する必要があります。
概要:
thinkphp フレームワークを使用する場合、IP ポートにアクセスできない理由は数多く考えられますが、最も一般的な問題は上記の 4 つの側面のいずれかです。この問題が発生した場合も、上記の手順に従ってトラブルシューティングを行うことができます。
以上がthinkphpのIPポートにアクセスできない問題の解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。