PHPページ用にNginxを構成する方法

この記事では、CentOSでNginx forPHPページを構成する方法を示しました。

このチュートリアルでは、NGINXをインストールしました。このチュートリアルでは、PHPアプリケーションを処理してポート80でサーバー化するためのNGINXWebサーバーの基本構成について説明します。NGINXとPHP-FPMを学習することをお勧めします。

前提条件

  • CentOSがインストールされた専用サーバーまたはクラウドサーバー。
  • CentOSにインストールされたNGINX。
  • PHPがインストールされています。
  • rootユーザーとしてSSHを使用します(sudoer権限を持つ通常のユーザーを使用できます。すべてのコマンドで「sudo」を使用してください)。

NginxインストールとPHPインストールに関する記事は次のとおりです。

両方をインストールしたら、メインのPHP-fpm構成ファイルを開きます。

# vi /etc/php.ini

cgi.fix_pathinfoを設定するパラメーターを探しています。セミコロン(;)を削除してコメントを解除し、0に設定します。

これは、PHPファイルが完全に一致しない場合に、見つけることができる最も近いファイルを実行しようとするようにPHPに指示するため、非常に安全でない設定です。これにより、基本的に、ユーザーは、実行を許可されるべきではないスクリプトを実行できるようにPHPリクエストを作成できます。

したがって、次のように行のコメントを解除して「0」に設定することにより、これらの条件の両方を変更します。

cgi.fix_pathinfo=0

完了したら、保存して終了します。

次に、php-fpmサービスを再起動します。

# systemctl restart php-fpm

PHPプロセッサを使用するようにNginxサーバーブロックを構成する

# vi /etc/nginx/sites-available/default

注:サーバーブロックのファイル名は、上記のように異なる場合があります。

Ngnixのデフォルトのサーバーブロックは次のようになります。

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.html index.htm;

server_name localhost;

location / {
try_files $uri $uri/ =404;
}
}

  • ここでは、ディレクトリが要求されたときにPHPファイルを提供できるようにindex.phpインデックスディレクティブを追加する必要があります。
  • server_nameディレクティブを変更します。localhostをFQDNドメイン名またはパブリックIPアドレスに置き換えます。
  • try_filesディレクティブを追加して、NginxがPHPプロセッサに不正なリクエストを渡さないようにします。

サーバーブロックは次のようになります。

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.php index.html index.htm;

server_name server_domain_name_or_IP;

location / {
try_files $uri $uri/ =404;
}

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

上記の変更のように構成し、ファイルを保存して終了します。

Ngnixを再起動して、必要な変更を加えます。

# systemctl restart nginx

次に、PHPテストファイルを作成します。

# vi /usr/share/nginx/html/info.php

サーバーに関するフォーマットされた情報を返す有効なPHPコードを追加します。

<>
phpinfo();
?>

保存して終了。

これで、必要な構成と変更を行いました。

最後に、前に作成したinfo.phpファイルにアクセスしましょう。

https://server_domain_name_or_IP/info.php

サーバーに関する情報を含むPHPによって生成されたWebページが表示されます。

PHPによって生成されたPHP情報ページが表示された場合は、Nginxを使用してPHP処理を正常にセットアップしています。

今のところ、次のように入力してファイルを削除します。

sudo rm /usr/share/nginx/html/info.php

この記事では、サポートエンジニアがPHPページ用にNginxを構成する方法を見てきました。


グーテンベルクの代わりにWordPressのデフォルトエディタとしてクラシックエディタを設定する方法

グーテンベルクの代わりにWordPressのデフォルトエディタとしてクラシックエディタを設定する方法

グーテンベルクエディターはまもなくWordPressのデフォルトエディターになります。クラシックエディタを選択するオプションがあります

🔧修正:PHPインストールにWordPressに必要なMySQL拡張機能がないようです

🔧修正:PHPインストールにWordPressに必要なMySQL拡張機能がないようです

自己管理のWordPressサイトを運営したいですか?素晴らしい。あなたは無数のことを学ぶでしょう。設定の重要な部分の1つ

修正:更新後のWordPressで「エディターで予期しないエラーが発生しました」

修正:更新後のWordPressで「エディターで予期しないエラーが発生しました」

WordPressの新しいブロックエディターを使用して新しい投稿を書くことができませんか?「編集者」を取得している可能性があります

WordPress5.0でブロックエディターを無効にしてクラシックエディターをインストールする方法

WordPress5.0でブロックエディターを無効にしてクラシックエディターをインストールする方法

WordPress 5.0以降、WordPressのデフォルトのエディターは新しいブロックエディターです。新しいエディターは根本的に異なります

Windows11でフォルダアイテムを更新する方法

Windows11でフォルダアイテムを更新する方法

コンテキストメニューの[更新]オプションがない場合、Windows11のファイルエクスプローラーでアイテムを更新する方法は次のとおりです。

WordPressデータベースをインポートする際の「utf8mb4_0900_ai_ci」照合エラーを修正する方法

WordPressデータベースをインポートする際の「utf8mb4_0900_ai_ci」照合エラーを修正する方法

WordPressのインストールをMySQL8サーバーからMySQL5.7(またはそれ以下)に切り替える場合は、ほとんどの場合、次の問題が発生します。

WordPress5.0の問題を修正する方法

WordPress5.0の問題を修正する方法

WordPress 5.0がついに展開され、グーテンベルクでまったく新しい編集体験がもたらされます。

PHPの短いタグを有効にする方法

PHPの短いタグを有効にする方法

この記事では、PHPの短いタグを有効にする方法について説明しました。PHPは、のような開始タグと終了タグを使用してファイルを解析します。PHPの短いタグを有効にするには

CentOSへのDoSおよびDDoS攻撃を防ぐためにmod_evasiveを構成する

CentOSへのDoSおよびDDoS攻撃を防ぐためにmod_evasiveを構成する

この記事では、CentOSに対するDoSおよびDDoS攻撃を防ぐためにmod_evasiveをインストールおよび構成する方法を学習します。mod_evasiveApacheモジュール。

CentOS上のNGINX用のPHP-FPMを使用してPHPをインストールする方法

CentOS上のNGINX用のPHP-FPMを使用してPHPをインストールする方法

CentOS上のNGINX用のPHP-FPMを使用してPHPをインストールする方法。PHPアプリケーションを処理し、ポート80でサーバー化するためのNGINXWebサーバーの基本構成。