天天看點

centos7.2 安裝lnmp環境 (非內建)

發表于2017/7/13 22:20:12  42人閱讀

關于php-fpm

nginx本身不能處理PHP,它隻是個web伺服器,當接收到請求後,如果是php請求,則發給php解釋器處理,并把結果傳回給用戶端。

nginx一般是把請求發fastcgi管理程序處理,fascgi管理程序選擇cgi子程序處理結果并傳回被nginx。

PHP-FPM是一個PHP FastCGI管理器,是隻用于PHP的。

PHP在 5.3.3 之後已經講php-fpm寫入php源碼核心了。是以已經不需要另外下載下傳了。

擷取PHP下載下傳位址

為什麼選擇5.6.30這個版本,因為學習,不是研究。誠然,7.0新增了很多PHP的新特性,性能上面也有些提升,如果是研究,倒是可以折騰一番,後面得空再講7.0的版本以及如何在各個PHP版本之間切換。

打開php的官網:http://php.net/,檢視php的版本清單

右擊,複制連結位址,在遠端主機登入,下載下傳該軟體(我選的是Australia的主機mirror下載下傳的)

# wget  http://au1.php.net/get/php-5.6.30.tar.gz/from/this/mirror

下載下傳下來的是一個mirror檔案,改成我們需要的檔案名

#mv mirror php-5.6.30.tar.gz

#tar zxvf php-5.6.30.tar.gz

#cd php-5.6.30

安裝libxml2相關元件

#yum install libxml2

#yum install libxml2-devel -y

安裝curl相關元件

#yum install curl curl-devel

安裝libpng相關元件

#yum install libpng

#yum install libpng-devel

安裝freetype相關元件

#yum install freetype-devel

安裝libxslt相關元件

#yum install libxslt-devel

#yum install openssl openssl-devel

#ln -s /usr/lib64/libssl.so /usr/lib/

配置安裝

進入到目錄,我們需要在安裝的時候将安裝目錄配置到/usr/local/php/裡

#./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-MySQL --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --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-xml --enable-zip

好的,當我們看到下面這句話的時候,說明你的php已經配置完成啦!

接下來我們隻需要編譯安裝即可完成php的安裝

#make && make install

看到這句話,表明安裝完成!

為了保險起見,我們make test一把,看看是否真的成功了。

配置相關

php.ini配置

首先我們需要配置的是php.ini這個檔案

安裝目錄有2個檔案:php.ini-development和php.ini-production

php.ini-production 線上版本使用

php.ini-development 開發版本使用

我們選擇development進行配置

# cp php.ini-development /usr/local/php/lib/php.ini

php-fpm配置

拷貝php-fpm配置檔案

#cp -R ./sapi/fpm/php-fpm.conf /usr/local/php/etc/php-fpm.conf

拷貝啟用檔案

#cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm(已棄用,詳細的見注1)

啟動

/usr/local/php/sbin/php-fpm

檢視php是否啟動成功

#ps aux | grep php

看到這些,表明你的php已經啟動成功啦!

重新開機及關閉

#kill -9 程序号

配置Nginx支援PHP

vi /usr/local/nginx/conf/nginx.conf

 location ~ \.php$ {

                  root           html;

                  fastcgi_pass   127.0.0.1:9000;

                  fastcgi_index  index.php;

                  fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

                  include        fastcgi_params;

             }

源碼編譯Nginx

yum -y install gcc gcc-c++ pcre-devel zlib zlib-devel

cd /usr/src/

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz

tar zxvf pcre-8.39.tar.gz

wget http://zlib.net/zlib-1.2.11.tar.gz

tar zxvf zlib-1.2.11.tar.gz

第二步:下載下傳Nginx并解壓

 wget http://nginx.org/download/nginx-1.11.13.tar.gz

 tar -zxvf ./nginx-1.11.13.tar.gz

 cd nginx-1.11.13

第三步:

  ./configure  --prefix=/usr/local/nginx/ --with-pcre=/usr/src/pcre-8.39  --with-zlib=/usr/src/zlib-1.2.11

第四步:

 make && make install

nginx啟動方式

/usr/local/nginx/sbin/nginx

安裝mysql

檢測mysql是否解除安裝幹淨

rpm -aq | grep -i mysql  

MYSQL安裝

1.先下載下傳mysql的repo源;相關指令:

2.安裝mysql-community-release-el7-5.noarch.rpm包

(安裝這個包後,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo)

 rpm -ivh mysql-community-release-el7-5.noarch.rpm

3.安裝MYSQL

 sudo yum install mysql-server

重新開機服務:

systemctl restart mysql.service

修改資料庫登入密碼:

use mysql;

update user set password=password('root') where user='root';

設定外部連接配接權限,密碼

grant all privileges on *.* to 'root'@'%' identified by 'jiacheng123.';

更新:flush privileges;

本文轉自淺景塵51CTO部落格,原文連結:http://blog.51cto.com/857803451/1953046 ,如需轉載請自行聯系原作者