ホームページ バックエンド開発 PHPの問題 php5.6 php-fpmのコンパイルとインストール方法

php5.6 php-fpmのコンパイルとインストール方法

Dec 17, 2021 am 11:16 AM

php5.6 php-fpm のコンパイルとインストール方法: 1. php 依存関係パッケージをインストールし、php5.6.36 バージョンをダウンロードします; 2. ソフトウェアのインストール ディレクトリを "/usr/local/php" として指定します; 3 . nginxを実行する phpを設定して解析するだけです。

php5.6 php-fpmのコンパイルとインストール方法

#この記事の動作環境: ubuntu16.04 システム、php5.6.36 バージョン、Dell G3 コンピューター。

php5.6 php-fpm nginx のインストールと設定

今日、php バージョンに基づいた Web サイトを見つけたので、オンラインで情報を収集しました。再度インストールしてみてください。

1. まず、php 依存関係パッケージをインストールします。

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gd gd2 gd-devel gd2-devel perl-CPAN pcre-devel
ログイン後にコピー

2. php5.6.36 バージョンをダウンロードします。


http://php.net/get/php-5.6.36.tar.gz/from/a/mirror
ログイン後にコピー

php-fpm コンポーネントの説明

LNMP 環境の nginx は php をサポートしていません。 need fastcgi プラグインを通じて PHP リクエストを処理します。 PHP では、この機能を提供するには php-fpm コンポーネントが必要です。 php5.3.3 より前のバージョンでは、php-fpm はパッチ パッケージの形式で存在していましたが、php5.3.3 以降は、個別にインストールすることなく、コンパイルおよびインストール中に --enable-fpm を使用してモジュールをロードするだけで済みます。

3. php のインストール

まず php をインストールするディレクトリを作成します


cd /etc/
mkdir php
cd /usr/local/
mkdir php
tar -xzvf php-5.6.36.tar.gz
cd php-5.6.36
ログイン後にコピー

以下の構成では、ソフトウェアのインストール ディレクトリを /usr/ として指定します。 local/php 、構成ファイルのインストール ディレクトリは

/etc/php
./configure --prefix=/usr/local/php --with-config-file-path=/etc/php --enable-fpm --enable-pcntl --enable-mysqlnd --enable-opcache --enable-sockets --enable-sysvmsg --enable-sysvsem  --enable-sysvshm --enable-shmop --enable-zip --enable-ftp --enable-soap --enable-xml --enable-mbstring --disable-rpath --disable-debug --disable-fileinfo --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pcre-regex --with-iconv --with-zlib --with-gd --with-openssl --with-mhash --with-xmlrpc --with-curl --with-imap-ssl


Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/fpm/php-fpm.conf
config.status: creating sapi/fpm/init.d.php-fpm
config.status: creating sapi/fpm/php-fpm.service
config.status: creating sapi/fpm/php-fpm.8
config.status: creating sapi/fpm/status.html
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: executing default commands


[root@localhost php-5.6.36]# make
[root@localhost php-5.6.36]# make install
ログイン後にコピー

ソフトウェア インストール ディレクトリの内容を表示します

[root@localhost php-5.6.30]# ls /usr/local/php
bin  etc  include  lib  php  sbin  var
ログイン後にコピー

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


[root@localhost php-5.6.30]# cp php.ini-development /etc/php/php.ini
ログイン後にコピー

ソフト接続を作成する


[root@localhost ~]# ln -s /usr/local/php/bin/php /usr/bin/php
[root@localhost ~]# ln -s /usr/local/php/bin/phpize /usr/bin/phpize
[root@localhost ~]# ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm
ログイン後にコピー

インストールされているバージョンを確認する

#

[root@localhost ~]# /usr/local/php/bin/php --version
[root@localhost ~]# cd /usr/local/php/etc/
[root@localhost ~]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@localhost ~]# ln -s /usr/local/php/etc/php-fpm.conf /etc/php/php-fpm.conf #添加软连接到 /etc/php目录
[root@localhost ~]# vim /usr/local/php/etc/php-fpm.conf
pid = run/php-fpm.pid #取消前面的分号
[root@localhost ~]# cp 源码目录/php-5.6.36/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录
 
[root@localhost ~]# chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限
 
[root@localhost ~]# chkconfig php-fpm on #设置开机启动
ログイン後にコピー

ポートが占有されているかどうかを確認する

##
[root@localhost ~]# netstat -tunlp |grep 9000
ログイン後にコピー

サービスを開始する

[root@localhost ~]# cd /etc/rc.d/init.d/
[root@localhost ~]# ./php-fpm start
[root@localhost ~]# netstat -tunlp |grep 9000
[root@localhost ~]# ps -ef|grep fpm
ログイン後にコピー

4、nginx 設定解析 php

1. nginx ディレクトリに入る

[root@localhost ~]# cd /usr/local/nginx/conf
ログイン後にコピー

2. 設定ファイルを編集します

[root@localhost ~]# vim nginx.conf
ログイン後にコピー

そして、server

location / {
    root html;
    index index.html index.htm 
index.php
;    #加上index.php,让nginx服务器默认支持index.php为首页
}
ログイン後にコピー

Configure の下にあります。php リクエストはバックエンド php-fpm モジュールに送信されます。デフォルトでは、php 設定ブロックはコメント化されています。この時点では、コメントを削除し、次の内容に変更します:

       location ~ \.php$ {
            root /usr/local/nginx/html;   #修改html路径
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
       fastcgi_param SCRIPT_FILENAME 
$document_root
$fastcgi_script_name;   #这里原来是/scripts,需要改成$document_root
            include fastcgi_params;
        }
ログイン後にコピー

保存後に nginx を再読み込み

[root@localhost ~]# /usr/local/nginx/nginx -s t
[root@localhost ~]# /usr/local/nginx/nginx -s reload
http://192.168.1.11/index.php
ログイン後にコピー


5. 関連するクエリ1. コマンドを使用して、サーバー上で開かれている php-cgi プロセスの数を確認します

 ps -fe |grep "php-fpm"|grep "pool"|wc -l
ログイン後にコピー

2. TCP リクエストの処理に使用される php-cgi プロセスの数を確認します

  netstat -anp|grep "php-fpm"|grep "tcp"|grep "pool"|wc -l
ログイン後にコピー

3. linux nginx php 環境では、php-fpm の各プロセスのメモリ制限

設定方法:

php-fpm.conf 設定ファイルを編集

php_admin_value[memory_limit ] = 128M (サーバー上の設定ファイルは /etc/php5/fpm/pool .d/www.conf にあります。このファイルは php-fpm.conf に含まれています) 次の数値は自由に変更できます: 32M、64M、 128M、256M、512M。この設定は、サーバーのメモリ サイズとニーズに基づいて行うことができます。書き込むには、変更後に php-fpm サービスをロードする必要があります

推奨学習: "
PHPビデオチュートリアル

"

以上がphp5.6 php-fpmのコンパイルとインストール方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP 8 JIT(Just-in-Time)コンピレーション:パフォーマンスの向上方法。 PHP 8 JIT(Just-in-Time)コンピレーション:パフォーマンスの向上方法。 Mar 25, 2025 am 10:37 AM

PHP 8のJITコンピレーションは、頻繁に実行されるコードをマシンコードにコンパイルし、重い計算でアプリケーションに利益をもたらし、実行時間を短縮することにより、パフォーマンスを向上させます。

PHPセキュアファイルアップロード:ファイル関連の脆弱性の防止。 PHPセキュアファイルアップロード:ファイル関連の脆弱性の防止。 Mar 26, 2025 pm 04:18 PM

この記事では、コードインジェクションのような脆弱性を防ぐために、PHPファイルのアップロードを確保することについて説明します。ファイルタイプの検証、セキュアストレージ、およびアプリケーションセキュリティを強化するエラー処理に焦点を当てています。

OWASPトップ10 PHP:共通の脆弱性を説明し、軽減します。 OWASPトップ10 PHP:共通の脆弱性を説明し、軽減します。 Mar 26, 2025 pm 04:13 PM

この記事では、PHPおよび緩和戦略におけるOWASPトップ10の脆弱性について説明します。重要な問題には、PHPアプリケーションを監視および保護するための推奨ツールを備えたインジェクション、認証の壊れ、XSSが含まれます。

PHP認証&承認:安全な実装。 PHP認証&承認:安全な実装。 Mar 25, 2025 pm 03:06 PM

この記事では、不正アクセスを防ぎ、ベストプラクティスの詳細、セキュリティ強化ツールの推奨を防ぐために、PHPで堅牢な認証と承認の実装について説明します。

PHP暗号化:対称と非対称暗号化。 PHP暗号化:対称と非対称暗号化。 Mar 25, 2025 pm 03:12 PM

この記事では、PHPの対称的および非対称暗号化について説明し、適合性、パフォーマンス、セキュリティの違いを比較しています。対称暗号化はより速く、バルクデータに適していますが、非対称は安全なキー交換に使用されます。

PHPで準備された声明の目的は何ですか? PHPで準備された声明の目的は何ですか? Mar 20, 2025 pm 04:47 PM

PHPの準備されたステートメントは、SQLインジェクションを防止し、コンピレーションと再利用を通じてクエリパフォーマンスを改善することにより、データベースのセキュリティと効率を強化します。

PHP APIレート制限:実装戦略。 PHP APIレート制限:実装戦略。 Mar 26, 2025 pm 04:16 PM

この記事では、Token BucketやLeaky BucketなどのアルゴリズムやSymfony/Rate-Limiterなどのライブラリを使用するなど、PHPでAPIレート制限を実装するための戦略について説明します。また、監視、動的に調整されたレートの制限、および手をカバーします

PHPを使用してデータベースからデータを取得するにはどうすればよいですか? PHPを使用してデータベースからデータを取得するにはどうすればよいですか? Mar 20, 2025 pm 04:57 PM

記事では、PHPを使用してデータベースからデータを取得し、手順、セキュリティ対策、最適化手法、およびソリューションを使用した一般的なエラーをカバーしています。

See all articles