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/nologing -M php-fpm
4.在源碼目錄下複製設定檔
cp php.ini-production /usr/local/php/etc/php.ini
5.php專屬設定檔改名
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
注意:不能用啟動指令碼加-t 如:/etc/init.d/php-fpm -t
課後答疑
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結合的模式不同,我們講的這兩個架構中,php在編譯的時候以一個模組的形式和apache成為了一個整體,這種情況下我們是可以把php的安裝目錄/usr/local/php刪除的。而lnmp中的php啟動了一個服務php-fpm,這種模式相當於nginx處理php指令碼時,直接把請求轉寄給了php-fpm,說白了就是一個代理。這個php的安裝目錄是不可以刪除的。 這兩種模式其實是可以共存的,編譯配置的時候,把prefix=後面的目錄改一下即可,不讓它覆蓋。