Centos7-x86 yum安装配置nginx解析php—shell脚本

简介: 记Centos7-x86 yum安装配置nginx解析php—shell脚本

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

图片.png

图片.png


目录
相关文章
|
2月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
1040 2
|
2月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
535 16
|
1月前
|
存储 关系型数据库 MySQL
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
MySQL是一款开源关系型数据库,高性能、易用、跨平台,支持多种存储引擎,广泛应用于Web开发、企业级应用等领域。本教程介绍其特点、架构及在主流Linux系统中的安装配置方法。
495 0
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
|
3月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
321 10
|
Shell PHP C++
C++/Php/Python 语言执行shell命令
编程中经常需要在程序中使用shell命令来简化程序,这里记录一下。 1. C++ 执行shell命令 1 #include 2 #include 3 #include 4 5 int exec_cmd(std::string cmd, std::string &res){ 6 if (cmd.
1156 0
|
2月前
|
存储 安全 Unix
七、Linux Shell 与脚本基础
别再一遍遍地敲重复的命令了,把它们写进Shell脚本,就能一键搞定。脚本本质上就是个存着一堆命令的文本文件,但要让它“活”起来,有几个关键点:文件开头最好用#!/usr/bin/env bash来指定解释器,并用chmod +x给它执行权限。执行时也有讲究:./script.sh是在一个新“房间”(子Shell)里跑,不影响你;而source script.sh是在当前“房间”里跑,适合用来加载环境变量和配置文件。
410 9
|
2月前
|
存储 Shell Linux
八、Linux Shell 脚本:变量与字符串
Shell脚本里的变量就像一个个贴着标签的“箱子”。装东西(赋值)时,=两边千万不能有空格。用单引号''装进去的东西会原封不动,用双引号""则会让里面的$变量先“变身”再装箱。默认箱子只能在当前“房间”(Shell进程)用,想让隔壁房间(子进程)也能看到,就得给箱子盖个export的“出口”戳。此外,Shell还自带了$?(上条命令的成绩单)和$1(别人递进来的第一个包裹)等许多特殊箱子,非常有用。
293 2
|
5月前
|
Shell
Shell脚本循环控制:shift、continue、break、exit指令
使用这些命令可以让你的Shell脚本像有生命一样动起来。正确使用它们,你的脚本就能像一场精心编排的舞蹈剧目,既有旋律的起伏,也有节奏的跳跃,最终以一场惊艳的表演结束。每一个动作、每一个转折点,都准确、优雅地完成所需要表达的逻辑。如此,你的脚本不只是冰冷的代码,它透过终端的界面,跳着有节奏的舞蹈,走进观众——使用者的心中。
264 60
|
2月前
|
数据采集 监控 Shell
无需Python:Shell脚本如何成为你的自动化爬虫引擎?
Shell脚本利用curl/wget发起请求,结合文本处理工具构建轻量级爬虫,支持并行加速、定时任务、增量抓取及分布式部署。通过随机UA、异常重试等优化提升稳定性,适用于日志监控、价格追踪等场景。相比Python,具备启动快、资源占用低的优势,适合嵌入式或老旧服务器环境,复杂任务可结合Python实现混合编程。
|
8月前
|
关系型数据库 MySQL Shell
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
一款自动化 MySQL 备份 Shell 脚本,支持本地存储、远程服务器同步(SSH+rsync)、阿里云 OSS 备份,并自动清理过期备份。适用于数据库管理员和开发者,帮助确保数据安全。
下一篇
oss云网关配置