(openEuler21.03+Centos7-x86)yum安装配置nginx解析php—shell脚本

举报
QGS 发表于 2022/03/02 15:43:39 2022/03/02
【摘要】 (openEuler21.03+Centos7-x86)yum安装配置nginx解析php—shell脚本

该脚本适用于openEuler和Centos

Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强,支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能,并且支持很多第三方的模块扩展。

https://docs.openeuler.org/zh/docs/20.03_LTS/docs/Administration/%E6%90%AD%E5%BB%BAweb%E6%9C%8D%E5%8A%A1%E5%99%A8.html

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



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。