一。安装nginx
方法一 :老老实实的安装
systemctl stop firewalld
iptables -F
setenforce 0
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make
useradd -M -s /sbin/nologin nginx
tar xf nginx-1.14.2.tar.gz -C /usr/src
cd /usr/src/nginx-1.14.2/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module && make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/
[root@nginxconf]#nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
nginx
查看结果
方法二 用fpm包安装 ,需要手动开启nginx服务
二 安装MySQL数据库
[root@localhost ~]# tar xf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C /usr/local
[root@localhost ~]# cd /usr/local/
[root@localhost local]# mv mysql-5.7.24-linux-glibc2.12-x86_64/ mysql
[root@localhost local]# useradd -M -s /sbin/nologin mysql
[root@localhost local]# chown -R mysql:mysql /usr/local/mysql/
[root@localhost local]# vim /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid
[root@localhost local]# /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
[root@nginx mysql]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[root@nginx mysql]# source /etc/profile ##这两步可以用ln -s /usr/local/mysql/bin/* /usr/local/sbin 但是开启服务时用/etc/init.d/mysql start
[root@localhost local]# cd mysql/
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld #复制到主配置文件就可以直接使用systemctl start mysqld
[root@localhost mysql]# chkconfig --add mysqld #也可以用chmod +x /etc/init.d/mysqld
[root@localhost mysql]# systemctl start mysqld
三。安装PHP解析环境
[root@nginx~]# yum -y install gd libxml2-devel libjpeg-devel libpng-devel gcc gcc-c++ make
[root@localhost ~]# tar xf php-5.6.39.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/php-5.6.39/
[root@nginxphp-5.6.39]# ./configure --prefix=/usr/local/php5 --with-gd --with-zlib --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm --with-jpeg-dir=/usr/lib && make && make install
[root@nginxphp-5.6.39]#cp php.ini-production /usr/local/php5/php.ini
[root@nginxphp-5.6.39]# ln -s /usr/local/php5/bin/* /usr/local/bin/
[root@nginxphp-5.6.39]#ln -s /usr/local/php5/sbin/* /usr/local/sbin/
[root@nginx~]# cd
[root@nginx~]# tar xf zend-loader-php5.6-linux-x86_64_update1.tar.gz -C /usr/src/
[root@nginx~]# cd /usr/src/zend-loader-php5.6-linux-x86_64/
[root@nginx zend-loader-php5.6-linux-x86_64]# cp ZendGuardLoader.so /usr/local/php5/lib/php/
[root@nginx zend-loader-php5.6-linux-x86_64]#vim /usr/local/php5/php.ini
zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1
四、配置Nginx支持PHP环境
[root@nginx~]# cd /usr/local/php5/etc/
[root@nginxetc]# cp php-fpm.conf.default php-fpm.conf
[root@nginxetc]#useradd -M -s /sbin/nologin php
[root@nginxetc]# vim php-fpm.conf
sed -i '25c pid = run/php-fpm.pid' php-fpm.conf &> /dev/null
sed -i '149c user = php' php-fpm.conf &> /dev/null
sed -i '150c group = php' php-fpm.conf &> /dev/null
sed -i '246c pm.start_servers = 20' php-fpm.conf &> /dev/null
sed -i '251c pm.min_spare_servers = 5' php-fpm.conf &> /dev/null
sed -i '256c pm.max_spare_servers = 35' php-fpm.conf &> /dev/null
sed -i '241c pm.max_children = 50' php-fpm.conf &> /dev/null
/usr/local/sbin/php-fpm
killall php-fpm
/usr/local/sbin/php-fpm
cat << EOF > /usr/local/nginx/html/php.php
<?php
phpinfo();
?>
EOF
vi /usr/local/nginx/con/nginx.conf ##修改
killall -1 ngxin
登陆网页测试 #192.168.200.111/php.php