linux下shell脚本实现wordpress搭建

news/2024/12/29 15:29:20/

wordpress_auto_install.sh 
 

#!/bin/bashuser=$(whoami)function wordpress_auto_install () {
if [ $user == "root" ];thenecho "前提:调整系统配置,如关闭selinux、firewall等!"sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/configsleep 0.2iptables  -Fsystemctl stop firewalldsystemctl  disable firewalldsleep 0.2echo "安装lamp所需rpm包"echo "Step1->lamp安装日志,请查看/$user/wordpress_auto_install.log"
> /$user/wordpress_auto_install.logecho "请确保本地yum源或网络yum源,二者之一必须可用!"yum install httpd mariadb mariadb-libs mariadb-server mariadb-devel php php-mysql -y >> /$user/wordpress_auto_install.log
# echo $?systemctl enable mariadbsystemctl enable httpdsystemctl restart mariadbsystemctl restart httpd
elseecho "您不是root管理员,没有权限操作!"exit 3
fiecho "Step2->mariadb数据库中针对wordpress创建数据库和用户"mysql <<END 2>/dev/nulldrop database wordpress_db;
ENDmysql <<END 2>/dev/nullcreate database wordpress_db;
ENDmysql <<END 2>/dev/nullgrant all privileges on wordpress_db.* to 'wordpress_user'@'localhost' identified  by '123456';
ENDmysql <<END 2>/dev/nullflush privileges;
ENDecho "Step3->将wordpress包拷贝至httpd的/var/www/html目录并解压"cp /$user/wordpress-4.9.4-zh_CN.tar.gz /var/www/html/tar -zxvf wordpress-4.9.4-zh_CN.tar.gz -C /var/www/html/  >> /$user/wordpress_auto_install.logrm -rf /var/www/html/wordpress-4.9.4-zh_CN.tar.gzchown -R root:root /var/www/html/wordpress/echo "Step4->更改wordpress配置文件指定数据库、用户名和密码"cp /var/www/html/wordpress/wp-config-sample.php  /var/www/html/wordpress/wp-config.phpsed -i 's/database_name_here/wordpress_db/' /var/www/html/wordpress/wp-config.phpsed -i 's/username_here/wordpress_user/' /var/www/html/wordpress/wp-config.phpsed -i 's/password_here/123456/' /var/www/html/wordpress/wp-config.phpcat  /var/www/html/wordpress/wp-config.php | grep -E "DB_NAME|DB_USER|DB_PASSWORD"echo "Step5->配置httpd虚拟主机"cat << END >> /etc/httpd/conf/httpd.conf
<VirtualHost *:80>DocumentRoot /var/www/html/wordpress
</VirtualHost>
ENDsleep 0.2systemctl restart httpdecho "Step6->wordpress后台部署成功,请通过浏览器打开http://`ifconfig |grep -A 1  "ens[0-9]*" |tail -1 |awk '{print $2}'`:80完成接下的部署"
}if [ $user != "root" ];thenecho "请以root管理员用户进行部署!"exit 1
fils /$user |grep -E "^wordpress-4.9.4-zh_CN.tar.gz$" &> /dev/null
if [ $? -eq 0 ];thenwordpress_auto_install
elseecho "请上传wordpress-4.9.4-zh_CN.tar.gz至/$user目录下!"exit 2
fi

登录验证(http://192.168.10.208/wp-admin/):

脚本中所用wordpress-4.9.4-zh_CN.tar.gz,如果需要,请留言。

谢谢!


http://www.ppmy.cn/news/1100624.html

相关文章

【uni-app】—3.新建一个uni-app项目

一、新建uni-app项目 1. 打开HBuilder X 2. 新建项目 3. 配置项目信息 4. 安装Sass 插件 &#xff08;因为项目需要&#xff09; 这里需要登录&#xff0c;自行用邮箱注册登录&#xff0c;再下载安装插件&#xff0c;安装完成如下 二、项目目录扩展 1. 初始化项目目录 2. 扩…

Linux高性能服务器编程 学习笔记 第一章 TCP/IP协议族

现在Internet使用的主流协议族是TCP/IP协议族&#xff0c;它是一个分层、多协议的通信体系。 TCP/IP协议族包含众多协议&#xff0c;我们只详细讨论IP协议和TCP协议&#xff0c;因为它们对编写网络应用程序有最直接的影响。如果想系统学习网络协议&#xff0c;RFC&#xff08;…

【多线程】Thread 类 详解

Thread 类 详解 一. 创建线程1. 继承 Thread 类2. 实现 Runnable 接口3. 其他变形4. 多线程的优势-增加运行速度 二. Thread 类1. 构造方法2. 常见属性3. 启动线程-start()4. 中断线程-interrupt()5. 线程等待-join()6. 线程休眠-sleep()7. 获取当前线程引用 三. 线程的状态1. …

Linux指令二【进程,权限,文件】

进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程&#xff0c;是操作系统进行 资源分配和调度的一个独立单位&#xff0c;是应用程序运行的载体。 一、进程基本指令 1.ps&#xff1a;当前的用户进程 ps 只显示隶属于自己的进程状态ps -aux 显示所有进程…

python创建exe文件

1、搭建环境 pip install pyinstaller 2、准备测试代码 exe_test.py import timeprint("hello") print("hello") print("hello") print("hello")time.sleep(5) 注&#xff1a;添加sleep以便在执行exe文件的时候能看到结果 3、生…

微信小程序-----通用获取输入框的值

在微信小程序中&#xff0c;可以通过以下步骤获取到输入框的值&#xff1a; 1. 在WXML中&#xff0c;使用标签创建一个输入框&#xff0c;并设置一个唯一的id属性。 html <input id"myInput" bindinput"inputChange" />2. 在JS中&#xff0c;定义一…

flink 端到端一致性

背景 我们经常会混淆flink提供的状态一致性保证和数据端到端一致性保证的关系&#xff0c;总以为他们表达的是同一个意思&#xff0c;事实上&#xff0c;他们不是一个含义&#xff0c;flink只能保证其维护的内部状态的一致性&#xff0c;而数据端到端的一致性需要数据源&#…

私有云不是真正的云计算!

大数据产业创新服务媒体 ——聚焦数据 改变商业 中国云计算遇到困境&#xff0c;IaaS层面&#xff0c;阿里云、腾讯云等增长乏力&#xff1b;SaaS没有发展起来。反观美国&#xff0c;整个云计算蓬勃发展&#xff0c;AWS、微软云、谷歌云体量更大&#xff0c;增速却不低&#x…