系统版本信息:Red Hat Enterprise Linux release 9.2 (Plow)
WordPress版本信息:wordpress-6.6.2-zh_CN
WooCommerce版本信息:woocommerce.9.5.1
环境架构:LNMP(RedHat9+nginx1.20.1+PHP 8.0.27+MySQL8.0.30)
一、任务规划
1. WordPress介绍
WordPress是使用PHP语言开发的开源发布平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的博客、网站。也可以把WordPress当作一个内容管理系统(CMS)来使用。WordPress有许多第三方开发的免费模板,安装方式简单易用。不过要做一个自己的模板,则需要有一定的专业知识。比如至少要懂的标准通用标记语言下的一个应用HTML代码、CSS、PHP等相关知识。WordPress官方支持中文版,同时有爱好者开发的第三方中文语言包,如wopus中文语言包。WordPress拥有成千上万个各式插件和不计其数的主题模板样式。
2. WooCommerce介绍
WooCommerce是WordPress中的一个开源电子商务插件,它允许用户在WordPress网站上创建和管理功能齐全的在线商店。
WooCommerce的优势与特点
- 免费且开源:相较于其他需要付费的电商系统,WooCommerce提供了功能齐全且免费的解决方案。
- 易于使用:安装方便,系统操作直观,不需要专业知识即可搭建购物平台。
- 高度自定义:任何开发人员都可以审核、修改或扩展WooCommerce的代码,满足用户的个性化需求。
- 强大的社区支持:拥有庞大的用户群和响应迅速的社区支持系统,用户可以轻松获取帮助和解决方案。
WooCommerce是WordPress中一个功能强大且灵活的电子商务插件,它为用户提供了一个易于使用的平台,帮助用户轻松创建和管理自己的在线商店。
二、任务实现
1. 节点设置
主机 | 网络信息 |
---|---|
wordpress | 192.37.26.10/24 |
2. 基础环境配置
[Step1]:
配置相关网络信息
handlebars
[root@localhost ~]# hostnamectl hostname wordpress
[root@localhost ~]# nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.37.26.10/24
[root@localhost ~]# nmcli connection up ens160
[Step2]:
关闭防火墙和SELinux
handlebars
[root@wordpress ~]# systemctl disable firewalld.service
[root@wordpress ~]# systemctl stop firewalld.service
[root@wordpress ~]# setenforce 0
[root@wordpress ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
[Step3]:
配置YUM本地源,在RedHat9镜像中已经集成了nginx、php、mysql软件包
handlebars
[root@wordpress ~]# mount /dev/cdrom /mnt
[root@wordpress ~]# vim /etc/yum.repos.d/local.repo
# 写入下列内容
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream/
enabled=1
gpgcheck=0
3. Nginx服务配置
[Step1]:
安装Nginx服务
handlebars
[root@wordpress ~]# dnf install -y nginx
[Step2]:
编辑nginx配置文件
handlebars
[root@wordpress ~]# vim /etc/nginx/nginx.conf
# 修改后内容如下
handlebars
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 4096;
include /etc/nginx/mime.types;
default_type application/octet-stream;
include /etc/nginx/conf.d/*.conf;
server {
listen 80;
listen [::]:80;
server_name _;
root /usr/share/nginx/html;
include /etc/nginx/default.d/*.conf;
location / {
root html;
index index.php index.html index.htm;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
}
}
[Step3]:
验证nginx配置文件语法
handlebars
[root@wordpress ~]# nginx -t
[Step4]:
启动Nginx并加入开机自启
handlebars
[root@wordpress ~]# systemctl enable --now nginx.service
[Step5]:
验证:通过浏览器访问测试页
4. MySQL服务配置
[Step1]:
先检查系统是否自带mariadb,如果存在则卸载
handlebars
[root@wordpress ~]# dnf remove -y mariadb mariadb-server
[Step2]:
安装MySQL
handlebars
[root@wordpress ~]# dnf install -y mysql mysql-server
[Step3]:
启动MySQL并加入开机自启
handlebars
[root@wordpress ~]# systemctl enable --now mysqld.service
[Step4]:
登录数据库,新建wordpress用户及数据库
handlebars
root@wordpress ~]# mysql
mysql> create database wordpress;
mysql> create user 'wordpress'@'192.37.26.10' identified by 'Wordpress@12345';
mysql> grant all privileges on wordpress.* to 'wordpress'@'192.37.26.10';
[Step5]:
验证:使用wordpress用户验证登录,新建表验证权限
handlebars
[root@wordpress ~]# mysql -uwordpress -h192.37.26.10 -pWordpress@12345
mysql> use wordpress;
mysql> create table student(id int);
5. 安装PHP
[Step1]:
安装PHP及相关软件包
handlebars
[root@wordpress ~]# dnf install -y php*
[Step2]:
编辑配置文件,将启用php-fpm的用户设置为nginx用户
handlebars
[root@wordpress ~]# vim /etc/php-fpm.d/www.conf
# 修改下列参数
user = nginx
group = nginx
[Step3]:
编辑php.ini文件
handlebars
[root@wordpress ~]# vim /etc/php.ini
# 修改下列参数
upload_max_filesize = 10M # 设置单次请求可以上传的文件的最大大小,方便后续上传主题
[Step4]:
启动php-fpm,并加入开机自启
handlebars
[root@wordpress ~]# systemctl enable --now php-fpm.service
[Step5]:
查看php-fpm进程的启动用户
handlebars
[root@wordpress ~]# ps -ef | grep php-fpm
[Step6]:
验证:先删除掉原有的所有文件,然后新建php测试文件,然后通过浏览器访问
handlebars
[root@wordpress ~]# rm -rf /usr/share/nginx/html/*
[root@wordpress ~]# echo "<?php echo phpinfo(); ?>" > /usr/share/nginx/html/index.php
6. 安装WordPress
[Step1]:
删除掉原有的索引文件
handlebars
[root@wordpress ~]# rm -rf /usr/share/nginx/html/*
[Step2]:
上传WordPress软件包
[Step3]:
解压软件包
handlebars
[root@wordpress ~]# cd /usr/share/nginx/html/
[root@wordpress ~]# tar zxf wordpress-6.6.2-zh_CN.tar.gz
[root@wordpress html]# mv wordpress/* .
[root@wordpress html]# rm -rf wordpress*
[Step4]:
因为我们nginx、php都是使用nginx用户运行,所以需要将软件包的属主设置为nginx,或者将权限设置为777
handlebars
[root@wordpress ~]# chown nginx:nginx -R /usr/share/nginx/html/
[Step5]:
在开始使用WordPress前,需要设置数据库名、数据库用户名、数据库密码等参数,可以通过web界面去设置或者通过修改配置文件的方式
设置方式1:通过Web界面设置
设置方式2:通过修改配置文件
[Step6]:
进入WordPress目录下,拷贝配置文件,然后修改
handlebars
[root@wordpress ~]# cd /usr/share/nginx/html/
[root@wordpress html]# cp wp-config-sample.php wp-config.php
[root@wordpress html]# vim wp-config.php
# 修改下列参数
define( 'DB_NAME', 'wordpress' );
define( 'DB_USER', 'wordpress' );
define( 'DB_PASSWORD', 'Wordpress@12345' );
define( 'DB_HOST', '192.37.26.10' );
[Step7]:
重新通过浏览器访问,此时会弹出"五分钟安装程序",根据提示填写相关信息,密码建议使用WordPress自动生成的复制性密码"US%pDv4ZFvJn%%iI"
[Step8]:
返回登录系统
7. 安装WooCommerce插件
[Step1]:
在WordPress中,安装插件有两种方式,分别是联网安装和离线安装,以下使用离线安装
[Step2]:
上传离线插件的时候,如果离线插件包比较大,就会弹出报错信息"413 Request Entity Too Large",解决这个问题有两个办法
- 修改nginx的配置文件,找到
client_max_body_size
参数,如果没有可以在server块中定义
handlebars
client_max_body_size 100M; # 设置允许的最大请求体位100MB
- 将插件包上传到服务器中,然后解压到
/usr/share/nginx/html/wp-content/plugins
目录下
以下将通过修改nginx服务配置文件以解决该问题
handlebars
[root@wordpress ~]# vim /etc/nginx/nginx.conf
# 在server块中添加下列内容
client_max_body_size 20M; # 插件包的大小为15MB,这里设置为20MB
[Step3]:
检验nginx配置文件的语法,然后重启nginx服务
handlebars
[root@wordpress ~]# nginx -t
[root@wordpress ~]# systemctl restart nginx.service
[Step4]:
重新上传插件包
8. WooCommerce插件配置
[Step1]:
启用WooCommerce插件
[Step2]:
启用WooCommerce插件后,会自动跳转到WooCommerce的配置页,根据提示安装即可
[Step3]:
选择你在商业旅程中的方位,可以根据情况进行配置
[Step4]:
选择商店的相关信息,以及销售的产品类型
[Step5]:
接下来会提示你可以安装一些免费的商业插件来增强效果,我们这里选择跳过
[Step6]:
配置完成
9. 商品上架与定价
[Step1]:
在WooCommerce中,提供了三种方式给我们上架商品,以下我们使用单个定制上传
- 单个定制上传
- 通过txt文本导入
- 通过csv文本导入
[Step2]:
添加商品名称、描述
[Step3]:
上传商品图片
[Step4]:
添加产品标签
[Step5]:
设置产品定价
[Step6]:
设置产品简要描述信息
[Step7]:
发布产品
[Step8]:
使用浏览器访问,可以看到我们刚刚发布的商品