ホームページ >バックエンド開発 >PHPチュートリアル >1.1-phpのコンパイルとインストール
1. MySQLのインストール(LAMPのインストール方法と同じ)
2. phpのインストール
wget http://cn2.php.net/distributions/php-5.4.37.tar.bz2
tar jxf php - 5.4.37.tar.bz2
useradd -s /sbin/nologin php-fpm
cd php-5.4.37
./configure --prefix=/usr/local/php --with-config-file - path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql - -with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with - iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --disable-ipv6 - -with-curl
make && make install
3. php ユーザーとユーザー グループを追加します
useradd -s /sbin/nologging -M php-fpm
4.ソースコードディレクトリ ファイルcp php.ini-production /usr/local/php/etc/php.ini
mv /usr/local/php/etc/php- fpm.conf .default /usr/local/php/etc/php-fpm.conf
6. 起動スクリプトをコピーします:
cp /usr/local/src/php-5.4.37/sapi/fpm /init.d .php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
service php-fpm start
php設定ファイルが正常かどうかをテストする
/usr/local/php/sbin/php-fpm -t
注: 起動スクリプトを使用して追加することはできません。 /etc/init.d /php-fpm -t
授業後のQ&A
php.ini は、php のグローバル設定ファイルです。たとえば、タイムゾーンを設定したいとします。禁止されている機能。
php-fpm.conf は、サービスを実行するためのユーザーの構成、起動パラメータの構成など、php-fpm 専用の構成ファイルです。ビデオではすべてをカバーしています。
php-fpm は単なるスタートアップバイナリです。
lnmp を学習するとき、最初に mysql php nginx もインストールする必要がありますか? mysqlとphpのインストールディレクトリは以前のものと競合しないでしょうか?また、mysql と php はコンパイルしてインストールしたことがないので、一緒に使用することはできませんか?
答え: lnmp の順序ですが、php が mysql の後ろにあることを確認してください。 MySQL は共有できますが、PHP はコンパイル パラメータが異なるため共有できません。 Apache の php とは異なるディレクトリを指定できます
lamp=linux+apache+mysql+php; lnmp=Linux+nginx+mysql+php 違いは、Apache、nginx、および php を組み合わせるさまざまなモードにあります。前述の 2 つのアーキテクチャでは、php はコンパイル中にモジュールの形式で Apache に統合されます。この場合、php インストール ディレクトリ /usr/local/php を削除できます。 lnmp の PHP はサービス php-fpm を開始します。このモードは、nginx が PHP スクリプトを処理するときにリクエストを直接 php-fpm に転送するのと同じです。このphpインストールディレクトリは削除できません。 これら 2 つのモードは実際には共存できます。コンパイルおよび構成する場合は、prefix= の後のディレクトリを変更するだけで、上書きされなくなります。