安裝gccphp
yum -y install gcc-c++
yum -y install pcre-devel
yum -y install zlib-devel
yum -y install openssl-devel
nginx官方下載地址html
http://nginx.org/en/download.html
獲取目前最新穩定版mysql
wget http://nginx.org/download/nginx-1.12.1.tar.gz
tar zxvf nginx-1.12.1.tar.gz
cd nginx-1.12.1
./configure
而後nginx
make&&install
會默認安裝到/usr/local/nginxc++
nginx相關命令
啓動nginxweb
/usr/local/nginx/sbin/nginx
查看nginx是否啓動sql
ps -ef|grep nginx
mariadb是MYSQL數據庫的一個分支,主要由開源社區在維護,採用GPL受權許可。開發這個分支的緣由之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險。mariaDB能夠徹底兼容MySQL,能夠成爲mysql的替代品。數據庫
yum -y install mariadb-server
啓動 service mariadb start (systemctl start mariadb) 中止 service mysqld stop (systemctl stop mariadb) 重啓 service mysqld restart (systemctl restart mariadb) 設置開機啓動 systemctl enable mariadb
mysql -u root 便可進入json
默認是沒有密碼的,給root設置密碼,能夠當即生效vim
set password for 'root'@'localhost'=password('mypassword')
可自行選擇php版本
http://php.net/
這裏用的7.1.9
wget -O php-7.1.9.tar.gz http://am1.php.net/get/php-7.1.9.tar.gz/from/this/mirror
tar zxvf php-7.1.9.tar.gz
cd php-7.1.9
yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libxslt libxslt-devel
安裝過程當中發現沒法安裝libmcrypt擴展,可使用如下方法
一、安裝第三方yum源
wget http://www.atomicorp.com/installers/atomic sudo sh ./atomic
二、使用yum命令安裝
sudo yum install php-mcrypt sudo yum install libmcrypt sudo yum install libmcrypt-devel
./configure \ --prefix=/usr/local/php \ --with-config-file-path=/etc \ --enable-fpm \ --with-fpm-user=www-data \ --with-fpm-group=www-data \ --enable-inline-optimization \ --disable-debug \ --disable-rpath \ --enable-shared \ --enable-soap \ --with-libxml-dir \ --with-xmlrpc \ --with-openssl \ --with-mcrypt \ --with-mhash \ --with-pcre-regex \ --with-sqlite3 \ --with-zlib \ --enable-bcmath \ --with-iconv \ --with-bz2 \ --enable-calendar \ --with-curl \ --with-cdb \ --enable-dom \ --enable-exif \ --enable-fileinfo \ --enable-filter \ --with-pcre-dir \ --enable-ftp \ --with-gd \ --with-openssl-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib-dir \ --with-freetype-dir \ --enable-gd-native-ttf \ --enable-gd-jis-conv \ --with-gettext \ --with-gmp \ --with-mhash \ --enable-json \ --enable-mbstring \ --enable-mbregex \ --enable-mbregex-backtrack \ --with-libmbfl \ --with-onig \ --enable-pdo \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-zlib-dir \ --with-pdo-sqlite \ --with-readline \ --enable-session \ --enable-shmop \ --enable-simplexml \ --enable-sockets \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \ --with-libxml-dir \ --with-xsl \ --enable-zip \ --enable-mysqlnd-compression-support \ --with-pear \ --enable-opcache
建立swap掛載點
mkdir /opt/images/ rm -rf /opt/images/swap
設置掛載swap的大小,64M*32=2GB
dd if=/dev/zero of=/opt/images/swap bs=64M count=32 mkswap /opt/images/swap
開啓swap
swapon /opt/images/swap
而後能夠繼續下一步操做
(php編譯安裝後,能夠關閉swap並刪除掛載文件
swapoff /opt/images/swap rm -f /opt/images/swap
)
make && make install
vim /etc/profile
在末尾加上
PATH=$PATH:/usr/local/php/bin export PATH
保存後使之當即生效
source /etc/profile
查看PHP版本
php -v
PHP-FPM是一個PHP FastCGI管理器。PHP-FPM提供了更好的PHP進程管理方式,能夠有效控制內存和進程、能夠平滑重載PHP配置。新版PHP已經集成了PHP-FPM,能夠直接使用。
php的默認安裝位置在 /usr/local/php
首先建立web用戶
用戶 組都設置爲www-data,能夠本身定(實際上在配置時已經設爲www-data了)
groupadd www-data useradd -g www-data www-data
複製一份php-fpm配置文件
cd /usr/local/php/etc cp php-fpm.conf.default php-fpm.conf 打開配置文件 vim php-fpm.conf
打開後移到最後會發現會引入php-fpm.d目錄下的全部 .conf 類型的配置文件
打開 php-fpm.d目錄,複製默認配置文件並打開修改
cd php-fpm.d cp www.conf.default www.conf vim www.conf
默認用戶組都是www
修改成咱們新加的www-data用戶
保存退出,重啓php-fpm服務
/usr/local/php/sbin/php-fpm
php-fpm默認使用9000端口,使用以下命令可查看是否成功啓動
netstat -lnt | grep 9000
打開nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
修改用戶組
第一行註釋去掉 nobody改成www-data
添加index.php,使nginx默認使用index.php爲入口頁
配置php-fpm模塊
主要修改69行的/scripts 爲 $document_root
以上都修改後保存退出
先檢測相關配置是否正確
/usr/local/nginx/sbin/nginx -t
顯示正確,重啓nginx
/usr/local/nginx/sbin/nginx -s reload
切到nginx下的html目錄(默認代碼目錄)
新建index.php
<?php phpinfo(); ?>
而後訪問對應地址(你的服務器地址)是否能夠運行
127.0.0.1/index.php
能夠直接用curl試下,爲了方便查看,這裏輸出hello,world
curl localhost/hello.php
輸出沒有問題,php成功運行。