管理阿里云服务器ECS -- 网站选型和搭建

小云:我已经学会了如何登录云服务器ECS了,但是要如何搭建网站呢?

老王:目前有很多的个人网站系统软件,其中 WordPress 是使用非常广泛的一款,而且也可以把 WordPress 当作一个内容管理系统(CMS)来使用,很多初创的企业也是通过 WordPress 构建自己公司的主页。

小云:那我就先用WordPress来搭建我的第一个网站吧。能再介绍下如何搭建么?

老王:WordPress是使用PHP语言开发的内容管理平台,WordPress运行的基础环境一般为“LAMP/LNMP,其中:

  • “L”为Linux的缩写,是操作系统软件,是服务器中其它软件运行的基础,常见的CentOS、Ubuntu等;
  • “A/N”为Apache/Nginx的缩写,是Web服务器软件,用来运行网站页面以及响应处理用户请求;
  • “M”为MySQL的缩写,是数据库软件,用来存放网站运行必要的系统数据和用户数据;
  • “P”为PHP的缩写,是编程软件,用来运行WordPress软件的代码。

小云:原来是这样,那我要如何搭建“LAMP/LNMP环境,并且在这个环境上安装WordPress

老王:我这里推荐的搭建方案有两种,第一种就是通过云市场镜像来搭建,这种方式最简单;第二种方式是自己手动搭建,也就是要登录ECS实例后,先搭建搭建“LAMP/LNMP环境,然后再安装和配置WordPress,这种方式相对来说要了解一些Linux操作系统的基本操作以及如何安装配置软件。接下来我把这两种方式都介绍一下。

搭建方案一:云市场镜像

云服务器ECS的“镜像市场”提供了WordPress的镜像,用于快捷搭建WordPress网站,自动部署“LAMP/LNMP”环境,降低了建站的门槛,非常适合刚开始使用ECS建站的企业或个人用户。

提示:云市场镜像是指来自云市场的优质镜像类商品,其供应商可能是阿里云或者是认证的第三方服务商ISV。云市场镜像包含了预装操作系统、应用环境和各类软件,满足建站/应用开发/可视化管理等个性化需求。

您可以通过以下多种方式使用“云市场镜像”安装WordPress:

方式一:购买ECS实例时,使用WordPress镜像装机:“镜像”选择“云市场镜像”,搜索“WordPress”关键字,选用镜像,进行装机。

方式二:现有ECS更换系统盘,使用WordPress镜像装机

提示:更换系统盘是高风险操作,如果您的ECS实例中已经存储了业务相关数据,不建议您使用该方式搭建WordPress网站。

1. 进入ECS实例详情页面,点击停止,确保更换操作系统的之前ECS实例处于已停止状态,点击更换操作系统,进行镜像配置。

搭建方案二:手动搭建

小云在学习并使用了一段时间ECS后,已经对实例的管理和 Linux 的使用有了一定的基础,于是准备自己手动搭建 WordPress 网站,他将对自己的ECS实例进行如下的安装配置工作:

第一步:部署 LAMP/LNMP 环境,需要在ECS实例中安装操作系统(Linux,本例中使用的操作系统版本为CentOS 7.9 64位)、Web服务器软件(Apache/Nginx)、数据库软件(MySQL)、网站代码运行环境(PHP)。

第二步:部署 WordPress 网站

第一步:部署 “LAMP/LNMP” 环境
  • “L”:通过Linux镜像安装操作系统。
  • “A/N”:安装Web服务器软件,本例为安装Apache服务,在Workbench中依次输入如下命令:
# 安装 Apache
yum -y install httpd
# 设置 Apache 开机自启动
systemctl enable httpd
# 启动 Apache
systemctl start httpd
# 查看 Apache 运行状态
systemctl status httpd

提示:本例中安装的Apache(音译为阿帕奇)是世界上最流行的Web服务器软件之一,其跨平台和安全性被广泛使用,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。

当看到“Active: active (running) ”说明Apache服务已经成功运行了。

“M”:安装MySQL数据库,在Workbench中依次输入如下命令:

# 更新 YUM 源
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
# 安装 MySQL 数据库
yum -y install mysql-community-server --nogpgcheck
# 设置 MySQL 开机自启动
systemctl enable mysqld
# 启动 MySQL
systemctl start mysqld
# 查看 MySQL 运行状态
systemctl status mysqld
# 查看 MySQL root用户默认密码
grep 'temporary password' /var/log/mysqld.log |awk '{print $11}'
# 执行MySQL 数据库初始化命令,
mysql_secure_installation

 执行mysql_secure_installation命令会出现MySQL初始化的交互式操作,首先修改 root 密码:

紧接着mysql_secure_installation会继续进行一系列的初始化操作,均输入“y”即可:

“P”:安装PHP,在Workbench中依次输入如下命令:

# 更新YUM源
yum -y install epel-release
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
# 安装 PHP
yum-config-manager --enable remi-php82
yum -y install php php-cli php-common php-devel php-embedded php-fpm php-gd php-ldap php-mbstring php-mcrypt php-fpm php-mysqlnd php-pdo php-opcache php-xml php-soap php-redis php-mongodb
# 查看 PHP 安装版本
php -v

测试“LAMP”环境,在Workbench中依次输入如下命令:

# 创建测试页面
echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
echo "This is Apache test page." > /var/www/html/index.html
# 重启 Apache 服务
systemctl restart httpd

在ECS实例管理页面获取公网IP地址

在本地打开浏览器:

输入http://ECS实例的公网IP地址,出现如下页面说明Apache服务已经成功运行:

输入http://ECS实例的公网IP地址/phpinfo.php,出现如下页面说明PHP已经安装成功:

提示:如无法访问Apache,需确认Apache服务是否成功启动,且安全组是否开放80端口。开启80端口方法如下:

第二步:部署 WordPress 网站
  • 配置 WordPress 数据库,在Workbench中依次输入如下命令:
# 使用root用户登录 MySQL,并输入密码。
mysql -uroot -p
# 创建 WordPress 网站的同名数据库
create database wordpress;
# 创建 WordPress 网站的管理员用户"wpadmin",密码为"Edualiyun@123"
grant all privileges on wordpress.* to 'wpadmin'@'localhost' identified by 'Edualiyun@123';
# 刷新权限,使配置生效
flush privileges;
# 退出 MySQL
exit;
  • 安装 WordPress,在Workbench中依次输入如下命令:
# 下载 WordPress
cd /opt
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
# 将下载的 WordPress 移动至网站根目录
tar zxvf latest-zh_CN.tar.gz
mv /opt/wordpress/ /var/www/html/
chown -R apache.apache /var/www/html/wordpress
# 修改 Apache 和 WordPress 的配置文件
sed -i 's%DocumentRoot "/var/www/html"%DocumentRoot "/var/www/html/wordpress"%g' /etc/httpd/conf/httpd.conf
cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
sed -i "s/define( 'DB_NAME', 'database_name_here' );/define( 'DB_NAME', 'wordpress' );/g" /var/www/html/wordpress/wp-config.php
sed -i "s/define( 'DB_USER', 'username_here' );/define( 'DB_USER', 'wpadmin' );/g" /var/www/html/wordpress/wp-config.php
sed -i "s/define( 'DB_PASSWORD', 'password_here' );/define( 'DB_PASSWORD', 'Edualiyun@123' );/g" /var/www/html/wordpress/wp-config.php
# 重启 Apache 服务
systemctl restart httpd

网站访问测试

  • 在本地打开浏览器:

      输入http://ECS实例的公网IP地址,出现如下页面说明 WordPress 网站已经成功运行。

  • 登录账号:输入上一步设置的管理员用户名和密码

  • 管理网站:登录后即可自行管理WordPress网站了

您既可以在“设置”里面,完成对网站的标题,副标题,网址等的设置,也可以发表和管理文章上传和使用图片视频等媒体文件根据自己的想法设计网站页面查看和管理用户评论等,除此之外WordPress也提供了很多主题和插件供用户自由选择。

OK,开始你的个人网站设计吧!

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

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

相关文章

使用yolov9来实现人体姿态识别估计(定位图像或视频中人体的关键部位)教程+代码

yolov9人体姿态识别&#xff1a; 相较于之前的YOLO版本&#xff0c;YOLOv9可能会进一步提升处理速度和精度&#xff0c;特别是在姿态估计场景中&#xff0c;通过改进网络结构、利用更高效的特征提取器以及优化损失函数等手段来提升对复杂人体姿态变化的捕捉能力。由于YOLOv9的…

架构师之路--docker命令实践整理

安装docker sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine sudo yum install -y yum-utils sudo yum-config-manager --add-repo http://mirrors.aliyun.com/…

开源博客项目Blog .NET Core源码学习(12:App.Application项目结构分析)

开源博客项目Blog的App.Application项目主要定义网站页面使用的数据类&#xff0c;同时定义各类数据的增删改查操作接口和实现类。App.Application项目未安装Nuget包&#xff0c;主要引用App.Core项目的类型。   App.Application项目的顶层文件夹如下图所示&#xff0c;下面逐…

巨控GRM110系列:短距离内的无线通讯模块

标签: #巨控GRM110 #无线通讯 #ROLA技术 #工业自动化 #远程数据采集 在工业自动化和智能制造的领域中&#xff0c;数据的准确传输是实现高效生产的关键。随着技术的不断进步&#xff0c;无线通讯技术已成为破解远距离数据传输难题的利器。今天&#xff0c;我们将聚焦于一款革命…

U盘未格式化?数据恢复大揭秘!

在日常办公和生活中&#xff0c;U盘已成为我们不可或缺的数据存储工具。然而&#xff0c;有时我们会遇到这样一个令人头疼的问题&#xff1a;原本正常使用的U盘&#xff0c;突然提示“未格式化”&#xff0c;里面的文件似乎都消失不见了。面对这种情况&#xff0c;很多人会感到…

线程池-1:线程池是如何复用线程的?

这段代码实现了一个简单的线程池 SimpleThreadPool。主要包括以下几个关键部分&#xff1a; 构造函数&#xff1a;初始化最大线程数 maxPoolSize、任务队列 taskQueue、当前线程数 currentPoolSize&#xff0c;以及锁 lock 和条件 taskAvailable。 submit(Runnable task) 方法…

FPGA时钟资源详解(2)——Clock-Capable Inputs

FPGA时钟系列文章总览&#xff1a;FPGA原理与结构&#xff08;14&#xff09;——时钟资源https://ztzhang.blog.csdn.net/article/details/132307564 目录 一、概述 1.1 为什么使用CC 1.2 如何使用CC 二、Clock-Capable Inputs 2.1 SRCC 2.2 MRCC 2.3 其他用途 2.3.1…

LeetCode 135. 分发糖果

n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求&#xff0c;给这些孩子分发糖果&#xff1a; 每个孩子至少分配到 1 个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果&#xff0c;计算并返回需要准备的…

C语言中连字符“#”的使用,输出固件的编译时间和版本号

首先我们使用C语言宏定义和“#”来组合字符串 #define MAINVER 2#define SUBVER1 0#define SUBVER2 1#define STR(s) #s#define VERSION(a,b,c) "System V" STR(a) "." STR(b) "." STR(c) " "__DATE__ 然后我们在全局变量中定义一…

VsCode的json文件不允许注释的解决办法

右下角找到注释点进去 输入Files: Associations搜索出此项 改为项为*.json值为jsonc保存即可 然后会发现VsCode的json文件就允许注释了

RAG进阶笔记:RAG进阶

1 查询/索引部分 1.1 层次索引 创建两个索引——一个由摘要组成&#xff0c;另一个由文档块组成分两步进行搜索&#xff1a;首先通过摘要过滤出相关文档&#xff0c;接着只在这个相关群体内进行搜索 1.2 假设性问题 让LLM为每个块生成一个假设性问题&#xff0c;并将这些问…

SQL104 返回产品名称和每一项产品的总订单数(left join..on.. ,group by)

select prod_name,count(order_num) as orders from Products P left join OrderItems OI on OI.prod_id P.prod_id group by prod_name order by prod_name;left join一个数据条多的表 count&#xff08;order_num&#xff09;,group by 另一个字段

全志R128 SDK HAL 模块开发指南——GPADC

GPADC 模块介绍 GPADC 是 12bit 采集精度的模数转换模块&#xff0c;支持 4 路通道&#xff0c;模拟输入范围 0-1.8v&#xff0c;最高采样率 1MHZ&#xff0c;并且支持数据比较&#xff0c;自校验功能&#xff0c;同时工作于可配置的四种工作模式&#xff1a; Single mode&a…

科学高效备考2024年汉字小达人:历年真题详细解析-古诗文专题10

距离2024年第11届汉字小达人比赛还有七个多月的时间&#xff0c;如何利用这段时间有条不紊地备考呢&#xff1f;我的建议是两手准备&#xff1a;①把小学1-5年级的语文课本上的知识点熟悉&#xff0c;重点是字、词、成语、古诗。阅读理解不需要。②把历年真题刷刷熟&#xff0c…

JAVA的sort用法详解(二维数组排序,List<>排序,lambada表达式,自定义类型排序)

目录 前言&#xff1a; 一维数组降序&#xff1a; 方法1.Comparator接口&#xff1a; 代码实现&#xff1a; 方法2.Collections.reverseOrder()&#xff1a; 代码实现&#xff1a; 二维数组排序&#xff1a; 代码如下&#xff1a; List<>排序&#xff1a; 代码…

Ansible-1

Ansible是一款自动化运维、批量管理服务器的工具&#xff0c;批量系统配置、程序部署、运行命令等功能。基于Python开发&#xff0c;基于ssh进行管理&#xff0c;不需要在被管理端安装任何软件。Ansible在管理远程主机的时候&#xff0c;只有是通过各种模块进行操作的。 需要关…

Linux 注入依赖环境

文章目录 配置依赖程序安装 JDK安装 Tomcat安装 mysql 配置依赖程序 下面配置依赖程序都以CentOS为例。 安装 JDK 可以直接使用 yum(CentOS) 直接进行安装。 先搜索&#xff0c;确定软件包的完整名称。 yum list | grep jdk再进行安装 进行安装的时候一定要先确保处在“管理…

【详细讲解React 快速入门教程】

&#x1f525;博主&#xff1a;程序员不想YY啊&#x1f525; &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家&#x1f4ab; &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 &#x1f308;希望本文对您有所裨益&#xff0c;如有…

【C语言】strcmp 的使⽤和模拟实现

前言 这篇文章将要带我们去实现模拟一个strcmp函数 首先我们要知道strcmp函数的定义 strcmp()定义和用法 我们先看一下strcmp在cplusplus网站中的定义 链接: link int strcmp ( const char * str1, const char * str2 );比较两个字符串将 C 字符串 str1 与 C 字符串 str2 …

openssl AF_ALG引擎使用

cmd AF_ALG是Linux提供的一种虚拟接口&#xff0c;用于访问内核中的加密算法。在Linux中&#xff0c;可以使用AF_ALG接口配合加密算法框架&#xff08;Crypto API&#xff09;来进行加密操作。 以下是一个使用AF_ALG和openssl进行加密操作的例子&#xff1a; # 加密 openssl…