ダウンロードしてサーバーにアップロードします
PHP のインストールにはコンパイルが必要なため、サーバーは gcc および g 環境を確実にインストールする必要があります。
推奨チュートリアル: 「
PHP ビデオ チュートリアルtar -xvzf php-7.0.5.tar.gz cd php-7.0.5
次に、パラメータを設定します。設定前に libxml2 と libxml2-devel が存在しない場合はエラーが報告されるため、libxml2 を更新し、libxml2-devel をインストールする必要があります。オンライン インストールを使用します。 :
yum -y install libxml2 yum -y install libxml2-devel
補足, オペレーティング システム環境が異なると、システム インストールおよび開発環境パッケージの完成度が異なるため、オペレーティング システムをインストールするときに必要な選択を行うことをお勧めします。アンインストールされたコンポーネントを統一した方法でインストールします。すでにインストールされている場合は、アップグレードすることができます。バージョンが完全に一致している場合は、操作は実行されません。上記の 2 つのコマンドに加えて、コマンドは次のように要約されます:
yum -y install openssl yum -y install openssl-devel yum -y install curl yum -y install curl-devel yum -y install libjpeg yum -y install libjpeg-devel yum -y install libpng yum -y install libpng-devel yum -y install freetype yum -y install freetype-devel yum -y install pcre yum -y install pcre-devel yum -y install libxslt yum -y install libxslt-devel yum -y install bzip2 yum -y install bzip2-devel
基本的には上記のパッケージで十分です。問題があれば追加してください。インストールが完了したら、設定を実行します。
./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip
実際には、ここには上記よりも多くの設定項目があります。./configure --help コマンドを使用できます。すべてのオプションを表示します。ここで、 --with-mysql のネイティブ サポートは php7 には存在しないことに注意してください。 , そして操作は mysqli または pdo になりました。通常の PHP 開発には上記のオプションで十分です。必要に応じて、対応するモジュールを手動で開きます
それからコンパイルを実行します:
make
コンパイル時間は少し長くなる可能性があります。コンパイルが完了したら、インストールを実行します:
make install
php のデフォルトのインストール場所はすでに上記にあります /usr/local/php として指定し、対応するファイルを設定します。
cp php.ini-development /usr/local/php/lib/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf ln -s /usr/local/php/sbin/php-fpm /usr/local/bin
次に、php.ini を設定し、vim /usr/local/php/lib/php.ini を使用して php 設定ファイルを開き、cgi .fix_pathinfo 設定項目を見つけます。この項目はデフォルトでコメントアウトされており、公式ドキュメントによると、これは、ファイルが存在しないときに Nginx がバックエンド PHP-FPM モジュールにリクエストを送信するのを防ぎ、悪意のあるスクリプト インジェクション攻撃を回避するためです。 0
# 設定後に保存して終了します
もう 1 つ注意すべき点は、php.ini 設定ファイルの場所です。コンパイル前のパラメータ。コンパイル パラメータは次のように記述できます: --with-config-file-path=/usr/local/php。この場合、php は指定されたディレクトリに戻り、php.ini 設定ファイルを読み取ります。これを追加しない場合 パラメータのデフォルトの場所は、PHP インストール ディレクトリの下の lib ディレクトリです。詳細は phpinfo() 出力インターフェイスでも確認できます。php.ini が他の場所に配置されており、php.ini で読み取れない場合PHP を実行すると、すべての設定変更が有効になりません。これに注意してください
この時点では、最初に Web ユーザーを作成する必要があります:
groupadd www-data useradd -g www-data www-data
その後、一部のオンライン チュートリアルでは php-fpm を変更する必要があります。 .conf に上で作成したユーザーとグループを追加します。このとき、vim / usr/local/etc/php-fpm.conf を使用します。ファイルを開いた後、正式な場所が見つかりません:
この時点でランダムな場所に追加すると、次のステップ php-fpm を起動するとディレクトリが見つからないエラーが報告されるため、php-fpm.conf にはユーザーとグループを追加しないでくださいこの時点で、php-fpm.conf の最後の行に移動すると、次の内容が表示されます (コンパイル中に追加された場合、 --prefix オプションにより次の位置が自動的に補完されます。デフォルトでは以下が空です。注意してください)。
php-fpm.d ディレクトリ内のすべての conf がここで紹介されます。設定ファイルですが、実際のディレクトリ /usr/local
に変更する必要のあるものはありません。
默认情况下etc/php-fpm.d/下有一个名为www.conf.defalut的配置用户的文件,执行下面命令复制一个新文件并且打开:
cp /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fpm.d/www.conf vim /usr/local/etc/php-fpm.d/www.conf
默认user和group的设置为nobody,将其改为www-data
修改完成之后,保存并退出,然后执行以下命令启动php-fpm服务:
/usr/local/bin/php-fpm
启动完毕之后,php-fpm服务默认使用9000端口,使用 netstat -ntlp | grep 9000 可以查看端口使用情况:
9000端口正常使用,说明php-fpm服务启动成功
然后执行 vim /usr/local/nginx/nginx.conf 编辑nginx配置文件,具体路径根据实际的nginx.conf配置文件位置编辑,下面主要修改nginx的server {}配置块中的内容,修改location块,追加index.php让nginx服务器默认支持index.php为首页:
然后配置.php请求被传送到后端的php-fpm模块,默认情况下php配置块是被注释的,此时去掉注释并修改为以下内容:
这里面很多都是默认的,root是配置php程序放置的根目录,主要修改的就是fastcgi_param中的/scripts为$document_root
修改完上面的,回到nginx.conf第一行,默认是#user nobody; 这里要去掉注释改为user www-data;或者user www-data www-data;表示nginx服务器的权限为www-data
修改完这些保存并退出,然后重启nginx:
/usr/local/nginx/nginx -s stop /usr/local/nginx/nginx
接下来编辑一个测试的php程序,在nginx下的html目录下创建test.php文件,打印一下php配置:
<?php phpinfo(); ?>
以上がソースコードからphp7をコンパイルしてインストールする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。