【Ubuntu】Virtualbox下lamp集群分布式搭建Wordpress

WordPress是一种使用PHP语言开发的开源内容管理系统(CMS),也常被用作博客平台。

  • 开发语言:PHP
    数据库:MySQL、mariadb(或其他兼容的数据库系统)
    授权方式:GNU通用公共许可证下发布,属于免费开源项目

一、准备工作

  1. 选择一台Ubuntu服务器作为Web服务器(172.20.80.110),它将运行Apache和PHP来处理WordPress的请求。

  2. 选择另一台Ubuntu服务器作为数据库服务器(172.20.80.211),它将运行MySQL来存储WordPress的数据库信息。

hostnameIP虚拟机
ley-web170.20.80.110ubuntu-22.04.4-desktop-amd64.iso
ley-mariadb172.20.80.211ubuntu-22.04.4-desktop-amd64.iso
  1. 确保网络连接:
    确保两台服务器之间的网络连接正常(网络模式是桥接),可以通过SSH等方式进行远程管理。同时,确保Web服务器能够通过网络访问数据库服务器(ping 172.20.80.211)。
    【参考文章】:VitualBox的网络模式+网络配置

  2. 更新系统:在两台服务器上分别运行以下命令来更新系统:sudo apt update && sudo apt upgrade -y

二、在Web服务器上安装和配置LAMP环境

1.安装启动Apache

sudo apt install apache2 -y  
sudo systemctl start apache2  
sudo systemctl enable apache2

在这里插入图片描述

2.安装PHP及其扩展

sudo apt install php php-mysql -y

这个扩展是WordPress运行所需的,确保安装了所有必要的PHP扩展。

在这里插入图片描述

3.测试Apache和PHP

vim /var/www/html/info.php
创建一个PHP测试文件,如/var/www/html/info.php,内容如下:
php
<?php  
phpinfo();  
?>

在浏览器中访问http://172.20.80.110/info.php,查看PHP配置信息,确保PHP已正确安装并配置。

三、在数据库服务器上安装和配置MySQL

1. 安装MySQL

sudo apt install mariadb-server
sudo mysql_secure_installation

按照提示设置MySQL的root密码和其他安全选项,确定数据库的操作权限。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 创建WordPress数据库和用户

登录MySQL:

mysql -u root -p

在这里插入图片描述

执行以下SQL语句来创建WordPress所需的数据库和用户:

CREATE DATABASE wordpress;
CREATE USER ‘root’@‘%’ IDENTIFIED BY ‘123456’;
GRANT ALL PRIVILEGES ON wordpress.* TO ‘root’@‘%’;
FLUSH PRIVILEGES;

四、下载并配置WordPress

1.下载WordPress

在Web服务器上,使用wget命令下载WordPress安装包:

cd /var/www/html  
sudo wget https://wordpress.org/latest.tar.gz
#下载wordpress安装包

2.解压安装包到当前目录

sudo tar xzvf latest.tar.gz

在这里插入图片描述

将解压后的WordPress文件移动到Apache的根目录,并删除不需要的文件:

sudo mv wordpress/* .  
sudo rm -rf wordpress latest.tar.gz

在这里插入图片描述

3.在Web服务器上配置WordPress

复制wp-config-sample.php为wp-config.php,并编辑该文件:

sudo cp wp-config-sample.php wp-config.php  
sudo vim wp-config.php

在这里插入图片描述
在文件中配置数据库连接信息,如数据库名(wordpress)、用户名(root)、密码(123456)和主机名(172.20.80.211)。

设置文件权限:
为了确保Apache能够正确读取和写入WordPress文件,需要设置适当的文件权限:

sudo chown -R www-data: /var/www/html/wordpress  
sudo chmod -R 755 /var/www/html/wordpress
sudo systemctl restart apache2

在这里插入图片描述
在这里插入图片描述

五、验证和访问

1.在浏览器中访问WordPress

打开浏览器,输入Web服务器的IP地址(http://172.20.80.211/wp-admin),你将看到WordPress的安装页面。
按照页面上的提示完成安装过程,设置站点标题、管理员账户和密码等信息。

2.分布式环境验证

确保WordPress前端(Web服务器)和后端数据库(MySQL服务器)之间的连接正常。

mysql -h 172.20.80.211 -u root -p 3306
-h IP地址
-u 用户
-p 端口

你可以通过查看WordPress的日志文件来检查是否有任何连接错误。
测试WordPress的各项功能,如发布文章、编辑页面、上传图片等,确保分布式环境配置正确。

六、报错

错误一:Ubuntu和windows都无法访问wordpress

1. 防火墙设置
可以选择关闭防火墙,也可以是 ufw 防火墙允许从任何 IP 地址到本机的 3306 端口的 TCP 连接。

ufw allow 3306/tcp

2. 数据库的回环地址

在默认情况下,MySQL 只监听本地回环地址(127.0.0.1),这意味着只有本地计算机上的客户端才能连接到 MySQL 服务器,所以为了让web端可以访问连接MySQL服务器,需要改回环地址。

2.1 修改方式

  • 方式一:如果你希望允许远程客户端连接到 MySQL 服务器,你需要修改 bind-address 参数的值为 0.0.0.0 或者指定一个具体的 IP 地址。设置为 0.0.0.0:表示 MySQL 服务器将监听所有可用的网络接口,这样任何具有正确连接信息的客户端都可以连接到 MySQL 服务器。但请注意,这可能会带来安全风险,因为 MySQL 服务器将对所有网络接口开放。
  • 方式二:设置为具体的 IP 地址:表示 MySQL 服务器将只监听该 IP 地址上的连接请求。这可以提高安全性,因为只有知道该 IP 地址的客户端才能连接到 MySQL 服务器。这里可以设置web服务器的IP(172.20.80.110)

这里采用方式一,因为我下载的是mariadb,不是MySQL,mariadb修改回环IP的配置文件隐藏的比较深

cd /etc/mysql/mariadb.conf.d
vim 50-server-cnf

请添加图片描述
请添加图片描述

错误二:Windows无法访问wordpress,ubuntu可以访问的话

  • 那么就是wordpress缺少一个插件

Ubuntu访问wordpress在插件那一栏搜索relative URL,安装并启动该插件;安装完插件后,还需配置,进入cd /var/www/html目录下,编辑vim wp-config.php文件,插入
define(‘WP_SITEURL’, ‘http://’ . $_SERVER[‘HTTP_HOST’]);
define(‘WP_HOME’, ‘http://’ . $_SERVER[‘HTTP_HOST’]);
这两行命令,退出,重启apache2,windows输入网址http://172.20.80.110/wp-admin即可访问

在这里插入图片描述

【参考文章】https://blog.csdn.net/2301_79558858/article/details/140902623?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-3-140902623-blog-121293836.235%5Ev43%5Epc_blog_bottom_relevance_base3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-3-140902623-blog-121293836.235%5Ev43%5Epc_blog_bottom_relevance_base3&utm_relevant_index=6

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/456566.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JavaEE】【多线程】单例模式

目录 一、设计模式1.1 单例模式1.1.1 饿汉模式1.1.2 懒汉模式 1.2 线程安全问题1.3 懒汉模式线程安全问题的解决方法1.3.1 原子性问题解决1.3.2 解决效率问题1.3.3 解决内存可见性问题和指令重排序问题 一、设计模式 在讲解案例前&#xff0c;先介绍一个概念设计模式&#xff…

C++ 模版和继承

目录 一.模版 1.模版的基本概念 a.函数模版 b.类模板 c.模版的实例化 d.class 和 typename的区别 e.非类型模版参数 2.模版的特化 a.全特化 —— 参数类型全部特殊化处理 b.半特化 —— 部分参数特殊化处理 c.偏特化——对某些类型的进一步限制&#xff08;实例化时传…

GD32学习知识点累计

时钟系统 GD32f427主频最高位240MHZ&#xff08;但是只能到200M&#xff09;&#xff0c;GD32给的函数外接25MHZ晶振配置主频为200MHZ,APB1最高频率为60HZ配置为主频的4分频为50MHZ&#xff0c;APB2最大为120MHZ配置为主频的2分频为100MHZ 定时器 无论什么定时器最大频率为200M…

安全见闻---清风

注&#xff1a;本文章源于泷羽SEC&#xff0c;如有侵权请联系我&#xff0c;违规必删 学习请认准泷羽SEC学习视频:https://space.bilibili.com/350329294 安全见闻1 泷哥语录&#xff1a;安全领域什么都有&#xff0c;不要被表象所迷惑&#xff0c;无论技术也好还是其他方面…

AI带货主播框架的搭建!

AI带货主播&#xff0c;作为新兴的技术应用&#xff0c;正在逐渐改变电商行业的面貌&#xff0c;通过利用人工智能技术&#xff0c;AI带货主播能够模拟真实主播的行为&#xff0c;与用户进行互动&#xff0c;推荐商品&#xff0c;提升购物体验。 本文将介绍如何搭建一个AI带货…

处理Hutool的Http工具上传大文件报OOM

程序环境 JDK版本&#xff1a; 1.8Hutool版本&#xff1a; 5.8.25 问题描述 客服端文件上传主要代码&#xff1a; HttpRequest httpRequest HttpUtil.createPost(FILE_UPLOAD_URL); Resource urlResource new UrlResource(url, fileName); httpRequest.form("file&q…

self-supervised learning(BERT和GPT)

1芝麻街与NLP模型 我們接下來要講的主題呢叫做Self-Supervised Learning&#xff0c;在講self-supervised learning之前呢&#xff0c;就不能不介紹一下芝麻街&#xff0c;為什麼呢因為不知道為什麼self-supervised learning的模型都是以芝麻街的人物命名。 因為Bert是一個非常…

实战-任意文件下载

实战-任意文件下载 1、开局 开局一个弱口令&#xff0c;正常来讲我们一般是弱口令或者sql&#xff0c;或者未授权 那么这次运气比较好&#xff0c;直接弱口令进去了 直接访问看看有没有功能点&#xff0c;正常做测试我们一定要先找功能点 发现一个文件上传点&#xff0c;不…

中酱集团:黑松露酱油,天然配方定义健康生活

在如今的大健康时代&#xff0c;人们对于美食的要求越来越高。不仅美味&#xff0c;更要健康。在健康美食的生态链中&#xff0c;有一个名字正逐渐成为品质与美味的代名词——中酱集团。而当中酱集团与黑松露酱油相遇&#xff0c;一场味觉的革命就此拉开帷幕。 中酱集团&#x…

【产品应用】旋转式贴标机一站式解决方案

针对贴标机行业设备&#xff0c;立迈胜公司拥有智能控制器、一体化伺服电机、减速机等系列产品&#xff0c;可以轻松解决传统电机接线不便、占用空间、自重过大、部件繁杂等问题&#xff0c;帮助贴标机制造商实现设备精准控制、运行稳定的同时&#xff0c;保证生产流程高效产出…

开发运维警示录-20241024

开发警示录 1、作为开发&#xff0c;不要私自修改业务人员给的SQL语句&#xff0c;虽然个人感觉SQL很冗余&#xff0c;效率低等。 2、开发前&#xff0c;要明确需求&#xff0c;必要时通过图和文字形成文档与需求方确认、留痕。 3、开发复杂的业务逻辑代码前&#xff0c;先疏通…

oracle数据库---PL/SQL、存储函数、存储过程、触发器、定时器job、备份

PL/SQL 什么是 PL/SQL PL/SQL&#xff08;Procedure Language/SQL&#xff09;是 Oracle 对 sql 语言的过程化扩展&#xff0c;指在 SQL 命令语言中增加了过程处理语句&#xff08;如分支、循环等&#xff09;&#xff0c;使 SQL 语言具有过程处理能力。把SQL语言的数据操纵能…

瑞芯微的 展会总结

首先是我感兴趣的产品&#xff1a; 摄像头的 墨水瓶的。 android 盒子&#xff0c;使用的是rk3588s 然后是瑞芯微&#xff21;&#xff29;在做什么&#xff1a;  在对 音频 视屏的输出 进行补充。 比如&#xff0c;视频拍了一张图片很模糊&#xff0c;那么他们用AI算法&am…

基于Multisim红外接近报警电路设计(含仿真和报告)

【全套资料.zip】红外接近报警电路设计Multisim仿真设计数字电子技术 文章目录 功能一、Multisim仿真源文件二、原理文档报告资料下载【Multisim仿真报告讲解视频.zip】 功能 标题&#xff1a;红外接近报警电路 红外报警器是当前利用电子技术制作而成的防盗报警器&#xff0c…

Sei 生态迎首个 MMORPG 游戏伙伴 Final Glory,开启新篇章

​“随着 Final Glory 拓展至 SEI Network&#xff0c;SEI 生态也迎来了首款 MMORPG 游戏” 链游赛道新贵 Final Glory Final Glory 是建立在 MateArena 引擎上的 MMORPG 游戏&#xff0c;作为目前行业内首个斥巨资打造的 AAA 级 MMORPG 全链游戏&#xff0c;在面向市场后即引发…

PostgreSQL两节点用keepalived实现主备的高可用架构

使用keepalived实现PostgreSQL数据库两节点主备的高可用架构部署详解 环境配置和规划部署PostgreSQL的主备流复制架构keepalived介绍安装部署keepalived数据库配置配置keepalived相关参数文件启动keepalived模拟故障切换问题记录实践建议 看腻了就来听听视频演示吧&#xff08;…

Java 多线程(八)—— 锁策略,synchronized 的优化,JVM 与编译器的锁优化,ReentrantLock,CAS

前言 本文为 Java 面试小八股&#xff0c;一句话&#xff0c;理解性记忆&#xff0c;不能理解就死背吧。 锁策略 悲观锁与乐观锁 悲观锁和乐观锁是锁的特性&#xff0c;并不是特指某个具体的锁。 我们知道在多线程中&#xff0c;锁是会被竞争的&#xff0c;悲观锁就是指锁…

LSTM反向传播及公式推导

先回顾一下正向传播的公式: 化简一下: 反向传播从下到上逐步求偏导: 对zt求偏导(预测值和标签值相减): zt对未知数wt,ht,bt分别求偏导: ht对ot,Ct求偏导: ot对Net0求偏导: Net0对w0,b0求偏导: .... 总体的思路就是那个公式从下到上逐步对未知数求偏导: 下面是总体的流程…

Flutter项目打包ios, Xcode 发布报错 Module‘flutter barcode_scanner‘not found

报错图片 背景 flutter 开发的 apple app 需要发布新版本&#xff0c;但是最后一哆嗦碰到个报错&#xff0c;这个小问题卡住了我一天&#xff0c;之间的埪就不说了&#xff0c;直接说我是怎么解决的&#xff0c;满满干货 思路 这个报错 涉及到 flutter_barcode_scanner; 所…

微信小程序性能优化 ==== 合理使用 setData 纯数据字段

目录 1. setData 的流程 2. 数据通信 3. 使用建议 3.1 data 应只包括渲染相关的数据 3.2 控制 setData 的频率 3.3 选择合适的 setData 范围 3.4 setData 应只传发生变化的数据 3.5 控制后台态页面的 setData 纯数据字段 组件数据中的纯数据字段 组件属性中的纯数据…