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のデフォルトエディターになります。クラシックエディタを選択するオプションがあります

WordPressで未使用のCSSを削除する方法

WordPressで未使用のCSSを削除する方法

WordPressサイトで有料のWordPressテーマ、または公式のWordPressテーマリポジトリの人気のあるテーマを使用している場合は、

WordPressホームページで変更された日付で投稿を表示する方法

WordPressホームページで変更された日付で投稿を表示する方法

新しい情報で定期的に更新されるブログの特定の投稿を維持している場合は、投稿を並べ替えるのが最善です。

修正:Windows10アップデート後にタスクバーにバッテリーアイコンが表示されない

修正:Windows10アップデート後にタスクバーにバッテリーアイコンが表示されない

Windows 10ラップトップでバッテリーアイコンが突然なくなった?まあ、問題はいずれかで発生する可能性があります

WindowsおよびMac用のグーテンベルクキーボードショートカット

WindowsおよびMac用のグーテンベルクキーボードショートカット

ブロガー、コンテンツライター、マーケターのほとんどがGoogleドキュメントやMicrosoftWordでの執筆を好む理由を知っていますか

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

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

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

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

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

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

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

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

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

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

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

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

🔨修正:WordPressNginxサーバーのGutenbergで「更新に失敗しました」または「公開に失敗しました」エラー

🔨修正:WordPressNginxサーバーのGutenbergで「更新に失敗しました」または「公開に失敗しました」エラー

Nginxサーバーで実行されているWordPressサイトのGutenbergで「更新に失敗しました」または「公開に失敗しました」というエラーが発生しますか?私たち