Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强,支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能,并且支持很多第三方的模块扩展。
echo '安装php+nginx—配置nginx解析php—shell脚本,请选择操作系统:\n' echo '选择openEuler输入1,选择Centos7输入2:' read num case $num in 1) echo'你选择了openEuler' #!/bin/sh #php+nginx echo "#######################################################################" echo "# #" echo "# 正在关闭SElinux策略,防火墙 请稍等~ #" echo "# #" echo "#######################################################################" #永久关闭SElinux sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config systemctl disable --now firewalld echo "#######################################################################" echo "# 正在安装php----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #openEuler安装php yum list php yum -y install php #启动,自启,查看运行状态 service php-fpm start service php-fpm enable service php-fpm status echo "#######################################################################" echo "# 正在安装nginx----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #openEuler安装nginx yum -y install net-tools yum install -y nginx #启动,重启,开机自启nginx,运行状态 systemctl start nginx systemctl restart nginx systemctl enable nginx #查看当前所有tcp端口 netstat -ntlp #配置nginx解析php #/etc/nginx/nginx.conf echo "#######################################################################" echo "# 正在配置nginx解析php----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #在35行号插入多行指定内容,或者用cat >>目标文件<<EOF sed -i "53a location ~ \.php$ {\n root html;\n fastcgi_pass 127.0.0.1:9000;\n fastcgi_index index.php;\n fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$"fastcgi_script_name"; \n include fastcgi_params;\n }" /etc/nginx/nginx.conf #在35行号插入多行指定内容,或者用cat >>目标文件<<EOF sed -i "53a location / {\n root /usr/share/nginx/html;\n index index.html index.php index.htm;\n }\n" /etc/nginx/nginx.conf #检查配置文件可能出现的语法错误 nginx -t #验证web服务器是否搭建成功使用Linux系统验证 #curl http://IP #命令返回值是否为0,返回值为0,说明nginx服务器搭建成功 echo $? systemctl restart nginx echo "#######################################################################" echo "# 配置nginx访问php测试页面----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #nginx访问php测试页面 echo "测试页面配置路径/usr/share/nginx/html/index.php" cat >> /usr/share/nginx/html/index.php<<EOF <?php phpinfo(); ?> EOF echo "安装完成!使用浏览器访问IP/index.php测试页" #nginx访问日志 tail -f /var/log/nginx/access.log ;; 2) echo'你选择了Centos7' #!/bin/sh echo "#######################################################################" echo "# #" echo "# 正在关闭SElinux策略,防火墙 请稍等~ #" echo "# #" echo "#######################################################################" #永久关闭SElinux sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config systemctl disable --now firewalld echo "#######################################################################" echo "# 正在安装php----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm yum -y install yum-utils yum-config-manager --enable remi-php74 yum list php yum -y install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis #启动,自启 service php-fpm start service php-fpm enable echo "#######################################################################" echo "# 正在安装nginx----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #yum安装nginx yum -y install net-tools rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum install -y nginx #启动,重启,开机自启nginx,运行状态 systemctl start nginx systemctl restart nginx systemctl enable nginx #查看当前所有tcp端口 netstat -ntlp #配置nginx解析php #/etc/nginx/conf.d/default.conf echo "#######################################################################" echo "# 正在配置nginx解析php----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #指定index.html关键字后添加指定index.php内容 sed -i 's/index.html/& index.php/g' /etc/nginx/conf.d/default.conf #在35行号插入多行指定内容,或者用cat >>目标文件<<EOF sed -i "35a location ~ \.php$ {\n root html;\n fastcgi_pass 127.0.0.1:9000;\n fastcgi_index index.php;\n fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$"fastcgi_script_name"; \n include fastcgi_params;\n }" /etc/nginx/conf.d/default.conf nginx -t systemctl restart nginx echo "#######################################################################" echo "# 配置nginx访问php测试页面----- #" echo "# 请稍后----- #" echo "# #" echo "#######################################################################" #nginx访问php测试页面 echo "测试页面配置路径/usr/share/nginx/html/index.php" cat >> /usr/share/nginx/html/index.php<<EOF <?php phpinfo(); ?> EOF echo "安装完成!使用浏览器访问IP/index.php测试页" ;; *) echo'没有选择' ;; esac