Centos に PHP7.4 と Nginx をインストールする方法

Centos に PHP7.4 と Nginx をインストールする方法

準備する

1. 必要なインストールパッケージをダウンロードする

https://www.php.net/distributions/php-7.4.0.tar.gz をダウンロードしてください
http://nginx.org/download/nginx-1.17.6.tar.gz をダウンロードしてください

2. 必要な拡張機能をインストールする

yum install -y gcc gcc-c ++ cmake bison autoconf wget lrzsz libtool-devel freetype-devel devel-devel libpng-devel gd-devel peython-devel patch sudosl* opensldedsldedledledle Unzip Zlib-Devel Libevent* libxml2-devel libcurl* curl-devel-devel sqlite-devel libsodium-devel M https://dl.fedoraproject.org/pub/epel/7/x86_64/packages/o/oniguruma-devel-5.5-3.el7.x86_64.rpm

PHPをインストールする

1. 解凍 - ディレクトリに入る - コンパイルされたファイルを生成する

tar -zxvf php-7.4.0.tar.gz
php-7.4.0をインストールします
./configure --prefix=/usr/local/php \
  --with-config-file-scan-dir=/usr/local/php/etc/ \
  --with-mhash --with-pdo-mysql \
  --openssl 付き --mysqli 付き \
  --with-iconv --with-zlib \
  --enable-inline-optimization \
  --disable-debug --disable-rpath \
  --enable-shared --enable-xml \
  --enable-bcmath --enable-shmop \
  --enable-sysvsem --enable-sysvshm --enable-mbregex \
  --enable-mbstring --enable-ftp \
  --enable-pcntl --enable-sockets \
  --xmlrpc を有効にする \
  --pear なし --gettext あり \
  --enable-session --with-curl \
  --enable-opcache --enable-fpm \
  --gdbm を使用しない --高速インストールを有効にする \
  --disable-fileinfo --with-sodium

2. コンパイルしてインストールする

make && make install

3. 設定ファイル

1. 構成ファイルをインストールディレクトリにコピーします

cp ~/php-7.4.0/php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

2. PHP設定ファイルphp.iniを変更する

vim /usr/local/php/etc/php.ini

内容は以下のように変更されます。

; エラーを表示しません。デフォルトは display_errors = Off

; display_errorsをオフにした後、PHPエラーログをオンにします(パスはphp-fpm.confで設定されます)。デフォルトではlog_errors = Onです。

; 文字セット、default_charset = "UTF-8"

;ファイルアップロードサイズ、デフォルト値は小さすぎるので、10Mに変更することをお勧めします
アップロード最大ファイルサイズ = 2M

;PHP が受け入れる POST データの最大サイズ。フォームの最大値はデフォルトで 8M です。フォームにアップロードする画像が複数含まれている場合は、サイズが足りない可能性があります。サイズがこれを超えると、バックエンドはフォームデータを受信しません。 post_max_size = 8M

; PHP 拡張ライブラリのパスを設定します。デフォルトではコメントアウトされています。その後、/usr/local/php/lib/php/extensions/ の下のフォルダと同じ名前のフォルダが作成されます。
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/"

; PHP タイムゾーンを設定する date.timezone = PRC

; opcache を有効にする (デフォルトは 0)
[オプキャッシュ]
; Zend OPCache が有効かどうかを決定します
opcache.enable=1

3. php-fpm設定ファイルphp-fpm.confを変更する

vim /usr/local/php/etc/php-fpm.conf

内容は以下のように変更されます

; 後で再起動しやすくするためにセミコロンを削除します。推奨される変更;デフォルト値: なし
; 以下の値の最終ディレクトリは /usr/local/php/var/run/php-fpm.pid です
; 有効にすると、php-fpm はスムーズに再起動できます
pid = 実行/php-fpm.pid

; エラーログのパスを設定します。デフォルト値を使用できます。注: デフォルトのプレフィックスは /usr/local/php/var です。
; デフォルト値: log/php-fpm.log、つまり /usr/local/php/var/log/php-fpm.log
エラーログ = /var/log/php-fpm/error.log

; ログ レベル (デフォルト値にすることができます) 可能な値: alert、error、warning、notice、debug
; デフォルト値: 通知
log_level = 通知

; バックグラウンドで実行します。デフォルトは yes です。デフォルト値にすることができます。デフォルト値: yes
;デーモン化 = はい

; www.conf ファイルに設定を導入します。デフォルト値は include=/usr/local/php/etc/php-fpm.d/*.conf です。

4. www.confを変更する

vim /usr/local/php/etc/php.ini

内容は以下のように変更されます。

; ユーザーとユーザー グループを設定します。デフォルトは nobody です。デフォルト値 user = nginx
グループ = nginx

; PHP リスニングを設定します。以下はデフォルト値であり、推奨されません。デフォルト値は listen = 127.0.0.1:9000 です。
; nginx.conf の設定 fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock に従って;
;listen = /var/run/php-fpm/php-fpm.sock

#######スローログをオンにします。デフォルト値 slowlog = /var/log/php-fpm/$pool-slow.log を使用できます。
リクエスト_スローログ_タイムアウト = 10秒

4. php-fpmの操作

/usr/local/php/sbin/php-fpm -t # php-fpm は設定ファイルが正しいかどうかを確認します /usr/local/php/sbin/php-fpm # php-fpm が起動します kill -INT `cat /usr/local/php/var/run/php-fpm.pid` # php-fpm がシャットダウンします kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` # php-fpm がスムーズに再起動します

nginxをインストールする

1. 解凍 - ディレクトリに入る - コンパイルされたファイルを生成する

tar -zxvf nginx-1.17.6.tar.gz
nginx-1.17.6をインストールします
./configure \
  --prefix=/usr/local/nginx \
  --with-http_stub_status_module \
  --http_ssl_module \ で始まる
  --http_realip_module \ で始まる
  --http_sub_module \ を追加
  --with-http_gzip_static_module \
  --pcre 付き

2. コンパイルとインストール

作る
インストールする

/usr/local/nginx/sbin/nginx -t をテストします。

nginx: 設定ファイル /usr/local/nginx/conf/nginx.conf のテストが成功しました #テスト成功

3. 設定ファイル

1. nginx.confを設定し、vim /usr/local/nginx/conf/nginx.confを実行します。

内容は以下のように変更されます

#ユーザーnobody;
ワーカープロセス 1;
error_log /www/logs/nginx/error.log;
error_log /www/logs/nginx/error_notice.log 通知;
#error_log ログ/error.log 情報;
#pid ログ/nginx.pid;
イベント {
  ワーカー接続 1024;
}
http {
  mime.types を含めます。
  デフォルトタイプ アプリケーション/オクテットストリーム;
  #access_log ログ/access.log メイン;
  ファイル送信オン;
  #tcp_nopush オン;
  #キープアライブタイムアウト 0;
  キープアライブタイムアウト65;
  #gzip オン;
  #ディレクトリを表示 #autoindex オン;
  #ファイルサイズを表示 #autoindex_exact_size オン;
  #ファイルの時間を表示 #autoindex_localtime オン;
  /www/conf/vhosts/*.conf を含めます。
}

2. ウェブサイト設定ファイルを追加する

vim /www/conf/vhosts/default.conf

ファイルの内容は次のとおりです

サーバ{
  聞く 80;
  server_name localhost、www.test.com;
  ルート /www/web/default;
  位置 / {
    # URLの美化を有効にする if (!-e $request_filename){
      最後に ^/(.*) /index.php を書き換えます。
    }
    インデックス index.html index.php;
  }
  場所 ~ \.php$ {
    fastcgi.conf をインクルードします。
    127.0.0.1:9000; をデフォルトとして設定します。
    try_files $uri = 404;
  }
}

4. テスト構成

/usr/local/nginx/sbin/nginx -t を実行します。テストが失敗した場合は、戻って実行手順にエラーがないか確認します。

5. nginxの操作

/usr/local/nginx/sbin/nginx -t # 設定ファイルが正しいか確認します /usr/local/nginx/sbin/nginx # 起動します /usr/local/nginx/sbin/nginx -s stop # 閉じる /usr/local/nginx/sbin/nginx -s reload # スムーズに再起動します

要約する

以上が編集者が紹介した Centos に PHP7.4 と Nginx をインストールする操作方法です。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、編集者がすぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Centos8 に nginx をインストールするための詳細なチュートリアル (画像とテキスト)
  • Centos7 に nginx をインストールした後、conf.d ディレクトリに default.conf ファイルがないために「Welcome to nginx on Fedora!」というエラーが表示される問題を解決します。
  • CentOS7にNginxをインストールして自動起動を設定する方法
  • Centos7 に PHP と Nginx をインストールする詳細なチュートリアル
  • Centos7のソースコードのコンパイルとNginx1.13のインストールの詳細な説明
  • Centos8 に nginx1.9.1 をインストールする詳細な手順

<<:  MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル

>>:  WeChatアプレットはシンプルなチャットルームを実装します

推薦する

CSS3入力ボックスの実装コードはGoogleログインのアニメーション効果に似ています

CSS3を使用して、Googleログインページと同様の入力ボックスをアニメーション化します。効果1 ...

Vue プロジェクトに Electron を追加するための詳細なコード

1. package.jsonに追加する "メイン": "electr...

CentOS7 ファイアウォールとオープンポートの簡単な使い方の簡単な紹介

概要(公式にはより詳しい説明があります) Firewalld は、ネットワーク接続またはインターフェ...

MySQL データベースのインデックス順序の詳細な説明

目次事件の原因解剖学ファイルの並べ替えファイルのソートが非常に遅いのですが、他に解決策はありますか?...

mysqlはストアドプロシージャを使用してツリーノード取得メソッドを実装します。

図に示すように: テーブルデータこのようなツリーの場合、「Gao Yinrui」の下のすべてのノード...

7つのMySQL JOINタイプのまとめ

始める前に、これから紹介する JOIN タイプを示すために 2 つのテーブルを作成します。テーブルを...

MySQL コード実行構造例の分析 [シーケンス、分岐、ループ構造]

この記事では、例を使用して MySQL コード実行構造について説明します。ご参考までに、詳細は以下の...

Linux での MySQL 5.1 および 5.7 のインストール チュートリアル

以下のコンテンツのオペレーティング システムは次のとおりです: Centos 6.7 yum で M...

CSS3で実装された読み込みアニメーション

成果を達成する実装コード <h1>123WORDPRESS.COM</h1>...

MySQL 8.0 ウィンドウ関数の紹介と概要

序文MySQL 8.0 より前は、Oracle、SQL SERVER、PostgreSQL などの他...

製品の拡大鏡効果を実現する JavaScript

この記事では、参考までに、製品拡大鏡を実装するためのJavaScriptの具体的なコードを紹介します...

Vue.jsは画像切り替え機能を実装する

この記事では、画像切り替え機能を実装するためのVue.jsの具体的なコードを参考までに共有します。具...

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

1. プロジェクト文書 2. ページレイアウトにHTMLとCSSを使用するHTML部分 <di...

HTML の iframe と frame の違いを例を使って説明します

プロジェクトで frameset 属性を使用したことがあるかどうかはわかりません。昨年、オンライン ...