目录
LNMP安装部署 基本和LAMP一样 Apache换成Nginx
一、LNMP概述
1.LNMP工作原理
客户端请求访问一个地址,这个请求会到达nginx服务器
nginx服务器首先判断是否为静态请求,如果是静态请求则直接返回结果到达客户端,
如果是动态请求,这是nginx服务器只做反向代理的作用,(nginx通过接口传输协议PHP-fastcgi协议)它会将请求传给php-fpm这个服务来处理,但是php-fpm不做处理,因为php-fpm是用来管理进程的程序,他会调用PHP解析器进程,php解析进程会来处理这个php文件,如果其中需要调用数据,那么再通过mysql.sock连接到数据库进行读取数据,再进程处理,处理完成之后再交给php-fpm服务进程,php-fpm服务进程再交给nginx服务器,最后到达客户端
2.LAMP工作原理
客户端请求访问一个地址,这个请求会到达apache服务器
- apache服务会判断是动态请求还是静态请求,如果是静态请求,apache服务将会直接返回到客户端
- 如果是动态请求,apache服务会调用自己的一个模块libphp7.so模块进行解析处理,如果需要mysql数据库的支持,还会通过mysql.sock来连接数据库进行读去数据,处理完成之后,将返回到apache服务器,最后返回到客户端
3.LAMP和LNMP的区别
LAMP表示为:linux、apache、mysql、php
LNMP表示为:linux、 nginx、 mysql、php
主要区别在于web服务器与php后台之间的转发存在区别
- 当nginx作为web服务器时,nginx通过cgi接口协议转发到php-fpm服务程序上,nginx服务和php-fpm服务时相对独立的,然后由php-fpm程序调用对应的php解析进行来完成处理
- 当apache作为web服务器时,apache是调用libphp7.so模块来进行处理,这个模块是会随着apache的启动而启动。内嵌在apache中的一个模块
LNMP安装部署 基本和LAMP一样 Apache换成Nginx
二.LNMP部署
准备三台虚拟机(个人准备第一台安装nginx,第二台mysql数据库,第三台php服务)
分布式搭建部署:效率高,不会单点负载过高,防灾能力强不会全部挂掉,种架构不仅能够显著提升Web服务的性能和可靠性,还能带来维护便捷。
三台都要关闭防火墙,和挂载光盘
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
mount /dev/sr0 /mnt
1、安装Nginx服务
1、安装nginx的依赖包
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make
2、创建运行用户
useradd -M -s /sbin/nologin nginx
3、上传安装包、编译安装
tar xf nginx-1.26.1.tar.gz
cd nginx-1.26.1/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
##--prefix=/usr/local/nginx #指定nginx的安装路径
##--user=nginx \ #指定用户名
##--group=nginx \ #指定组名
##--with-http_stub_status_module #启用 http_stub_status_module 模块以支持状态统计
##--with-http_ssl_module ##需要https协议时启动http_ssl_module模块
make -j 4 && make install #b别超核编译
4、优化路径 让系统识别nginx的操作命令
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
nginx -t #检查配置文件是否配置正确
5、添加 Nginx 系统服务
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
#服务启动停止管理配置
6、赋权,重启服务并设置开机自启
chmod 754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service
7、验证
有问题可能是本机防火墙没关
2、安装 MySQL服务
1、准备工作
[root@localhost ~]# cd /opt/
#拖入安装包
[root@localhost opt]# ls
mysql-boost-5.7.44.tar.gz
[root@localhost opt]# tar xf mysql-boost-5.7.44.tar.gz
[root@localhost opt]# cd mysql-5.7.44/
2、安装Mysql环境依赖包
[root@localhost mysql-5.7.44]# df
文件系统 1K-块 已用 可用 已用% 挂载点
devtmpfs 1913624 0 1913624 0% /dev
tmpfs 1930644 0 1930644 0% /dev/shm
tmpfs 1930644 12592 1918052 1% /run
tmpfs 1930644 0 1930644 0% /sys/fs/cgroup
/dev/mapper/centos-root 36805060 6238132 30566928 17% /
/dev/sda1 1038336 189024 849312 19% /boot
tmpfs 386132 12 386120 1% /run/user/42
tmpfs 386132 0 386132 0% /run/user/0
[root@localhost mysql-5.7.44]# mount /dev/sr0 /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake openssl-devel
3、创建用户
[root@localhost opt]# useradd -M -s /sbin/nologin mysql
[root@localhost opt]# cat /etc/passwd | grep mysql:
mysql:x:1001:1001::/home/mysql:/sbin/nologin
4、编译安装
cd /opt/mysql-5.7.44/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定mysql的安装路径
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径
-DSYSCONFDIR=/etc \ #指定配置文件的存储路径
-DSYSTEMD_PID_DIR=/usr/local/mysql \ #指定进程文件的存储路径
-DDEFAULT_CHARSET=utf8 \ #指定默认使用的字符集编码,如 utf8
-DDEFAULT_COLLATION=utf8_general_ci \ #指定默认使用的字符集校对规则
-DWITH_EXTRA_CHARSETS=all \ #指定支持其他字符集编码
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #安装ARCHIVE存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #安装BLACKHOLE存储引擎
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ #安装FEDERATED存储引擎
-DMYSQL_DATADIR=/usr/local/mysql/data \ #指定数据库文件的存储路径
-DWITH_BOOST=/usr/local/boost \ #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
-DWITH_SYSTEMD=1 #生成便于systemctl管理的文件
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
5、编译及安装
make -j 4 && make install #慢,想开6核编译
6、清除mariadb缓存
yum remove -y mariadb*
7、修改mysql 配置文件
vim /etc/my.cnf
删除原配置,重新添加以下配置
[client]
port = 3306
socket=/usr/local/mysql/mysql.sock
[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
8、更改mysql安装目录和配置文件的属主属组
[root@localhost mysql-5.7.44]# chown mysql:mysql /etc/my.cnf
[root@localhost mysql-5.7.44]# ll /etc/my.cnf
-rw-r--r-- 1 mysql mysql 554 5月 30 18:04 /etc/my.cnf
[root@localhost mysql-5.7.44]# cd /usr/local/
[root@zx3 local]# ll
总用量 0
drwxr-xr-x. 2 root root 6 4月 11 2018 bin
drwxr-xr-x. 2 root root 6 4月 11 2018 etc
drwxr-xr-x. 2 root root 6 4月 11 2018 games
drwxr-xr-x. 2 root root 6 4月 11 2018 include
drwxr-xr-x. 2 root root 6 4月 11 2018 lib
drwxr-xr-x. 2 root root 6 4月 11 2018 lib64
drwxr-xr-x. 2 root root 6 4月 11 2018 libexec
drwxr-xr-x 11 root root 177 5月 29 16:12 mysql
drwxr-xr-x. 2 root root 6 4月 11 2018 sbin
drwxr-xr-x. 5 root root 49 4月 30 23:58 share
drwxr-xr-x. 2 root root 6 4月 11 2018 src
[root@localhost local]# chown -R mysql:mysql mysql/
[root@localhost local]# ll
总用量 0
drwxr-xr-x. 2 root root 6 4月 11 2018 bin
drwxr-xr-x. 2 root root 6 4月 11 2018 etc
drwxr-xr-x. 2 root root 6 4月 11 2018 games
drwxr-xr-x. 2 root root 6 4月 11 2018 include
drwxr-xr-x. 2 root root 6 4月 11 2018 lib
drwxr-xr-x. 2 root root 6 4月 11 2018 lib64
drwxr-xr-x. 2 root root 6 4月 11 2018 libexec
drwxr-xr-x 11 mysql mysql 177 5月 29 16:12 mysql
drwxr-xr-x. 2 root root 6 4月 11 2018 sbin
drwxr-xr-x. 5 root root 49 4月 30 23:58 share
drwxr-xr-x. 2 root root 6 4月 11 2018 src
9、在环境变量中添加mysql的bin和lib目录
[root@localhost local]# cd mysql/bin/
[root@localhost bin]# pwd
/usr/local/mysql/bin
[root@localhost bin]# ls
innochecksum mysql_config mysqlslap
lz4_decompress mysql_config_editor mysql_ssl_rsa_setup
myisamchk mysqld mysqltest
myisam_ftdump mysqld_pre_systemd mysqltest_embedded
myisamlog mysqldump mysql_tzinfo_to_sql
myisampack mysqldumpslow mysql_upgrade
my_print_defaults mysql_embedded mysqlxtest
mysql mysqlimport perror
mysqladmin mysql_install_db replace
mysqlbinlog mysql_plugin resolveip
mysqlcheck mysqlpump resolve_stack_dump
mysql_client_test mysql_secure_installation zlib_decompress
mysql_client_test_embedded mysqlshow
echo 'export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib' >> /etc/profile
source /etc/profile
[root@localhost bin]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
10、初始化数据库
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
#生成初始化密码为空
#指定管理用户
#指定数据库的安装目录
#指定数据库文件的存储路径
11、添加mysql系统服务
[root@localhost bin]# cd /usr/local/mysql/usr/lib/systemd/system/
[root@localhost system]# ls
mysqld.service mysqld@.service
[root@localhost system]# cp mysqld.service /usr/lib/systemd/system
#用于systemctl服务管理
systemctl daemon-reload #刷新识别
systemctl start mysqld.service #开启服务
systemctl enable mysqld #开机自启动
netstat -anpt | grep 3306 #查看端口
12、修改mysql 的登录密码
[root@localhost system]# mysqladmin -u root -p password "abc123"
Enter password:
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@localhost system]# mysql -u root -pabc123
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 5.7.44 Source distribution
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
Enter password直接回车,因为原先是没有密码的。
13、授权远程登录
mysql -u root -p
mysql> grant all on *.* to 'root'@'%' identified by 'abc123';
Query OK, 0 rows affected, 1 warning (0.00 sec)
#授予root用户可以在所有终端远程登录,使用的密码是abcd1234,并对所有数据库和所有表有操作权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
3.安装配置 PHP 解析环境
1、安装环境依赖包重新开始
yum -y install gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel pcre-devel
2、编译安装
cd /opt #添加安装包
tar jxvf php-7.1.10.tar.bz2
cd php-7.1.10
./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip
#编译安装
make -j 4 && make install
3、路径优化
ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/
4、调整PHP配置文件
php有三个配置文件:
php.ini 主配置文件
php-fpm.conf 进程服务配置文件
www.conf 扩展配置文件
#调整主配置文件:
cp /opt/php-7.1.10/php.ini-development /usr/local/php/lib/php.ini
vim /usr/local/php/lib/php.ini
--1170行--修改
mysqli.default_socket = /usr/local/mysql/mysql.sock
--939行--取消注释,修改时区
date.timezone = Asia/Shanghai
php -m #验证安装的模块
#调整进程服务配置文件:
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
--17行--去掉";"注释
pid = run/php-fpm.pid
#调整扩展配置文件:
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
vim www.conf
创建用户
[root@localhost php-fpm.d]# useradd -M -s /sbin/nologin php
[root@localhost php-fpm.d]# cat /etc/passwd | grep php:
php:x:1001:1001::/home/php:/sbin/nologin
启动php-fpm
cd /opt/php-7.1.10/sapi/fpm
cp php-fpm.service /usr/lib/systemd/system/php-fpm.service
systemctl daemon-reload
systemctl start php-fpm.service
systemctl enable php-fpm.service
5、配置Nginx支持php解析 (再回到第一台)
vim /usr/local/nginx/conf/nginx.conf #修改nginx配置文件
可nginx -t检查 有无语法错误
[root@localhost ~]# nginx -t #检查语法
[root@localhost ~]# systemctl restart nginx #重启一下nginx服务
5、验证PHP 测试页
[root@localhost conf]# mkdir -p /var/www/html
[root@localhost conf]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# vim test.php
[root@localhost html]# cd /usr/local/nginx/html/
[root@localhost html]# ls
50x.html index.html
[root@localhost html]# vim tutu.html
<h1>tutu is a cat</h1>
<img src="tutu.png" />
保存退出,把图片拖进来
静态验证
http://192.168.100.15/tutu.html
验证动态
cd /var/www/html
yum install -y rpcbind nfs-utils
vim /etc/exports
systemctl enable --now rpcbind nfs #先启动rpcbind
showmount -e #检查一下
回php服务器测试
[root@localhost fpm]# vim /etc/fstab
[root@localhost fpm]# mkdir /var/www/html -p
[root@localhost fpm]# mount -a
[root@localhost fpm]# df
再看就有了
6、验证数据库工作是否正常
mysql -uroot -pabcd1234
grant all on *.* to 'root'@'%' identified by 'abcd1234';
flush privileges;
在php服务器创建的,文件里面的IP地址是mysql服务器的IP地址
[root@localhost fpm]# cd /var/www/html/
[root@localhost html]# ls
test.php
[root@localhost html]# vim mysql.php
<?php
$link=mysqli_connect('192.168.100.16','root','abcd1234');
if($link) echo "<h1>mysql connect successful </h1>";
else echo "<h1>mysql connect failed</h1>";
?>
一键部署LNMP脚本(要改软件安装包版本号)
#!/bin/bash
#关闭系统防火墙和安全机制
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
cat <<EOF
欢迎使用LNMP架构服务搭建
请将安装包放入/opt目录下
1.安装nginx服务
2.安装mysql
3.安装php
4.一键安装LNMP架构
EOF
read -p "请输入你的选择:" choice
#======编译安装nginx服务======
#1、安装所需开发包和编译环境、编译器
Nginx () {
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make
#2、创建程序用户,便于准确控制访问
useradd -M -s /sbin/nologin nginx
#3、解压安装包
cd /opt
tar zxf nginx-1.20.2.tar.gz -C /opt/
#4、指定安装路径、指定用户名、组名、启用模块以支持统计状态
cd nginx-1.20.2/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
#5、编译及安装
make -j2 && make install
#6、优化配置文件路径,便于系统识别nginx操作命令
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
#7、添加nginx系统服务
echo '[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecrReload=/bin/kill -s HUP $MAINPID
ExecrStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target' > /lib/systemd/system/nginx.service
#8、赋权及开启服务、开启开机自启
chmod 754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service
if [ $? -eq 0 ];then
echo "nginx服务安装完成"
else
echo "服务安装失败,请检查"
fi
}
#=======编译安装mysql服务=======
#1、安装Mysql环境依赖包
Mysql () {
yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake
#2、创建程序用户,便于准确控制访问用户
useradd -M -s /sbin/nologin mysql
#3、配置软件模块
cd /opt
tar zxf boost_1_59_0.tar.gz
tar zxf mysql-5.7.17.tar.gz
mv boost_1_59_0 /usr/local/boost
cd /opt/mysql-5.7.17/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
#4、编译及安装
make -j2 && make install
#5、修改mysql 配置文件
echo '[client]
port = 3306
socket=/usr/local/mysql/mysql.sock
[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_
DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES' > /etc/my.cnf
#6、更改mysql安装目录和配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf
#7、设置路径环境变量
echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
source /etc/profile
#8、初始化数据库
cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
#9、添加mysqld系统服务
cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
#用于systemctl服务管理
systemctl daemon-reload #刷新识别
systemctl start mysqld.service #开启服务
systemctl enable mysqld #开机自启动
echo -e "\033[31m mysql安装完成!\033[0m"
if [ $? -eq 0 ];then
echo "MYSQL安装完成"
else
echo "服务安装异常,请检查"
fi
}
#=====PHP=======
#1、安装环境依赖包
Php () {
yum -y install \
gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel
#2、配置软件模块
cd /opt
tar xzf php-7.1.24.tar.gz
cd php-7.1.24
./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
#3、编译安装
make -j3 && make install
#4、主配置文件:php.ini
cp /opt/php-7.1.24/php.ini-development /usr/local/php/lib/php.ini
sed -i '1170c mysqli.default_socket = /usr/local/mysql/mysql.sock' /usr/local/php/lib/php.ini
sed -i '939c date.timezone = Asia/Shanghai' /usr/local/php/lib/php.ini
#5、优化把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别
ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/
php -m
#6、进程服务配置文件:php-fpm.conf
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
sed -i '17c pid = run/php-fpm.pid' /usr/local/php/etc/php-fpm.conf
#7、扩展配置文件:www.conf
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
#8、启动php-fpm
ln -s /usr/local/php/sbin/* /usr/local/sbin
/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini
netstat -anpt | grep 9000
if [ $? -eq 0 ];then
echo "服务安装成功"
else
echo "服务安装失败,请检查"
fi
}
#9、配置 Nginx 支持php解析
#--65行--取消注释,修改
conf(){
cd /usr/local/nginx/conf/
sed -i '65,71s/#/ /g' nginx.conf
sed -i '69s/\/scripts/\/usr\/local\/nginx\/html/g' nginx.conf
echo '<?php
phpinfo();
?>' > /usr/local/nginx/html/index.php
systemctl restart httpd
}
################调用函数###################################
case $choice in
1)
Nginx
;;
2)
Mysql
;;
3)
Php
;;
4)
nginx
sleep 2
mysql
sleep 2
php
sleep 2
conf
;;
*)
echo "请输入正确选项"
esac