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アプレットはシンプルなチャットルームを実装します

推薦する

Node.jsサービスDockerコンテナアプリケーション実践のまとめ

この記事では、Docker コマンドの使用とインストールについては説明しません。Docker を基礎...

URLに基​​づいてリクエストを転送するnginxの実装の実践経験

序文これは fastdfs を使用してイントラネット外部に展開された分散ファイルシステムであるためで...

Reactのヒントはフックの依存関係の問題を解消する方法を教えます

reactプロジェクトで非常に一般的なシナリオ: const [watchValue、setWatc...

アイデアを使用して Springboot 初期化サーバーを構築する際の問題分析

問題の説明最近、Springbootプロジェクトを構築していたところ、会社のネットワークケーブルに接...

Element-ui の組み込み 2 つのリモート検索 (ファジークエリ) の使用方法の説明

問題の説明フロントエンドリモート検索やファジークエリと呼ばれる種類のクエリがあります。 Ele.me...

React 手書きタブ切り替え問題

親ファイル React をインポートし、{useState} を 'react' か...

MySQL 8.0 の降順インデックス

序文インデックスが順序付けられていることは誰もが知っていると思いますが、MySQL の以前のバージョ...

計算機機能を実装するミニプログラム

この記事の例では、計算機機能を実装するためのミニプログラムの具体的なコードを参考までに共有しています...

サーバー間のファイル バックアップ ソリューション、サーバー ファイルを別のサーバーに自動的にバックアップする方法は?

多くの組織ではファイル サーバーをバックアップする必要があり、あるサーバーから別のファイル サーバー...

ES6のシンボルデータ型について詳しく説明します

目次シンボルデータタイプシンボルが表示される理由シンボルの特徴シンボルの応用rbオブジェクトにupメ...

mysql の存在する例と存在しない例の詳細な説明

mysql の存在する例と存在しない例の詳細な説明テーブルA |列1 | 列1 | 列3 |テーブル...

jsはユーザーのページ操作を記憶するためにクッキーを使用します

序文開発プロセスでは、ブラウザレベルでユーザーが実行した操作を記憶するなど、同様の要件に遭遇すること...

MySQL全文検索の使用例

目次1. 環境整備2. データの準備3. ショーを始める4. 単語分割エンジン要約する参考文献1. ...

JavaScript イベント委任の原則

目次1. イベント委任とは何ですか? 2. イベント委任の原則3. イベント委託の役割1. イベント...

HTML+JS に基づくシンプルな年齢計算ツールの実装

目次序文デモンストレーション効果HTMLコードCSSコードJavascriptコードデモアドレス序文...