CentOS 搭建 WordPress 站点

news2025/1/9 5:07:44

博客链接:https://www.aiiyx.cn

内容纲要

  1. 1. 版本相关
  2. 2. 主要内容
  3. 3. 安装并配置 PHP
  4. 4. 安装并配置 WordPress
  5. 5. 配置 Nginx
  6. 6. 配置 MySQL
  7. 7. 初始化 WordPress

1. 版本相关

  1. WordPress 版本 5.9.3
  2. PHP 版本 8.1
  3. MySQL 版本 5.7
  4. Nginx 版本 1.18

2. 主要内容

由于我的 CentOS 服务器上,已经事先安装好了 MySQL 和 Nginx,所以本文主要记录如何安装和配置以下4部分内容:

  1. 安装并配置 PHP
  2. 安装并配置 WordPress
  3. 配置 Nginx
  4. 配置 MySQL

3. 安装并配置 PHP

安装 PHP:

  1. 将 yum 源更换为 aliyun 的 remi:
    yum -y install https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm
    yum -y install yum-utils
  2. 为 PHP8.1 启用流模块:
     yum-config-manager --enable remi-php81
  3. 查询 PHP 可用的版本列表【可选操作】:
    yum repolist all |grep php

  4. 安装 PHP8.1 及扩展:
    sudo yum install -y php
    sudo yum install php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis php-common php-opcache php-memcached --skip-broken
    
  5. 运行下面的命令,查看已安装的 PHP 版本,只要能显示版本,就证明 PHP 已经安装成功!
    php -v
    

配置 PHP:
经过上面5个步骤,PHP 就成功安装到了 CentOS 系统中。接下来需要参考如下的步骤,修改 PHP 的配置文件:

  1. 检查系统中是否存在名为 nginx 的用户用户组
    # 查询所有用户
    cat /etc/passwd
    # 查询所有用户组
    cat /etc/group
  2. 如果有,则直接忽略当前的第2步。如果没有,则运行如下的命令,在系统中添加名为 nginx 的用户和用户组:

    useradd nginx

    注意:useradd nginx 会创建名为 nginx 的用户,同时这个用户默认就属于名为 nginx 的用户组。因此不需要再单独创建名为 nginx 的用户组了。

  3. 通过编辑器修改 /etc/php-fpm.d/www.conf 配置文件,把 user 用户和 group 用户组从默认的 apache 修改为 nginx。修改后的截图如下:

4. 安装并配置 WordPress

  1. 从 WordPress 官网上下载源码,然后解压,查看其文件:

    [root@localhost ~]# wget https://cn.wordpress.org/latest-zh_CN.tar.gz
    [root@localhost ~]# tar xf latest-zh_CN.tar.gz
    [root@localhost ~]# ls wordpress/
    index.php        wp-admin              wp-content         wp-load.php      wp-signup.php
    license.txt      wp-blog-header.php    wp-cron.php        wp-login.php     wp-trackback.php
    readme.html      wp-comments-post.php  wp-includes        wp-mail.php      xmlrpc.php
    wp-activate.php  wp-config-sample.php  wp-links-opml.php  wp-settings.php
  2. 步骤1解压出来的文件夹名为 wordpress,里面存着所有 WordPress 需要的源码文件。这个解压出来的 wordpress 文件夹放在任何位置都可以,但必须配置好权限,让 PHP 所在的用户组有读写权限
    为了方便,我这里将其放在 /usr/local/ 目录下,并且更改其用户为 nginx

    [root@localhost ~]# mv wordpress/ /usr/local/
    [root@localhost ~]# cd /usr/local
    [root@localhost html]# chown -R nginx:nginx wordpress/
    [root@localhost html]# ll
    total 1
    drwxr-xr-x   5 nginx nginx 4096 May 13 13:32 wordpress

5. 配置 Nginx

再次声明,由于我的服务器上已经事先安装过 Nginx,所以这里不再赘述如何安装 Nginx,对安装 Nginx 感兴趣的小伙伴可以自行百度噢。这里只介绍如何针对 WordPress 配置 Nginx。
用编辑器打开 nginx/conf/nginx.conf 配置文件,对 http 节点下的 server 进行配置。详细的配置如下:

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    # gzip 压缩配置,可以提高传输效率
    gzip  on;
    gzip_min_length 1k;
    gzip_comp_level 6;
    gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css;
    gzip_disable "MSIE [1-6]\.";
    gzip_vary on;

    server {
        listen       443 ssl;
        server_name  填写自己购买的域名;

        ssl_certificate      填写 SSL 证书的 pem 文件的存储路径;
        ssl_certificate_key  填写 SSL 证书的 key 文件的存储路径;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        # 重要:
        # root 用来指定 wordpress 文件夹的存放路径
        # index 中,必须把 index.php 添加到第一位。因为 wordpress 项目的首页是 index.php
        location / {
            root   /usr/local/wordpress;
            index  index.php index.html index.htm;
        }

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        # 重要:
        location ~ \.php$ {
            # root 用来指定 wordpress 文件夹的存放路径
            root           /usr/local/wordpress;
            # wordpress 默认运行在 9000 端口,请确保服务器的 9000 端口没有被其他程序占用!
            fastcgi_pass   127.0.0.1:9000;
            # 首页的文件名
            fastcgi_index  index.php;
            # $document_root 是一个变量,表示 root 选项的值。而 root 的值就是 wordpress 文件夹的存放路径
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
}

6. 配置 MySQL

同样的,由于我的服务器上已经事先安装过 MySQL,所以这里不再赘述如何安装 MySQL,对安装 MySQL 感兴趣的小伙伴可以自行百度噢。这里只介绍如何针对 WordPress 配置 MySQL。

我们需要做的事情:就是为 WordPress 创建一个单独的 MySQL 数据库,用来存储 WordPress 网站运行过程中的所有动态数据。

在这里,建议大家把数据的名字创建为 wordpress 即可。注意:只需要创建一个空白数据库即可,后面我们在配置 WordPress 时,它会自动在空白数据库中生成对应的表结构和表数据。

创建数据库的两种方式(二选一噢):

  1. 基于可视化的操作工具(例如:MySQL Workbench)
  2. 执行 SQL 命令

    [root@localhost ~]# mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 2
    Server version: 5.7.27
    
    mysql> create database wordpress;
    Query OK, 1 row affected (0.00 sec)

7. 初始化 WordPress

  1. 重新启动php-fpm、nginx:

    # 重置 php 服务
    systemctl restart php-fpm
    # 先 cd 到 xxx/nginx/sbin/ 目录下,再执行下面的命令,重启 nginx
    ./nginx -s reload
  2. 在浏览器中输入您在 nginx 中配置好的 server_name 选项对应的域名,即出现 WordPress 的初始化界面:

  3. 点击“现在就开始!”按钮,填入数据库的名字登录数据库的账号密码

  4. 点击“提交”按钮,即可进入下一步:

  5. 输入“站点标题”、“用户名”、“密码”、“电子邮件”,即可安装。安装完成,即可登录后台管理界面:

  6. 此时,一个基于 WordPress 搭建的个人博客就运行起来啦~🎉

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

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

相关文章

ChatGPT:将你的微信变成智能聊天机器人!

天天用微信的你有没有做个这样一种设想:让最先进的人工智能算法帮你聊天! 这机器人可以回答各种问题,上知天文下知地理,甚至还能写代码。无论是哄女朋友,应付老婆,或者勾搭陌生小姐姐,都能做到24小时在线&…

一文带领大家了解什么是泛型

对于泛型!其实大家了解不是很多,在各大高校的学习中,如果你不去深入的了解泛型,老师只是会一水儿过,并不会单独去带领大家了解!!那么,笔者结合自身的学习泛型的想法,结合…

2022年双十二拼多多百亿补贴有活动吗?如何领红包?

2022年双十二拼多多百亿补贴有活动吗?如何领红包? 拼多多的活动大家都很清楚,平常没有活动的时候,价格也是比较实惠的,除了拼团购物之外,拼多多还有百亿补贴,所以商品比其他平台都要便宜,双十二拼多多百亿…

物理数据库服务器扫描hba卡识别共享磁盘命令

1、问题背景 默认情况,在扩容完1套物理rac共享存储后,rac主机是不能识别共享存储的。那么该怎么办呢? 2、解决办法 例如,在扩容完1套物理rac共享存储后,如果rac主机不能识别共享存储的话(一般需要执行命令后&#x…

Jboss弱口令Getshell

文章目录漏洞简介影响版本环境搭建漏洞复现漏洞简介 JBoss Administration Console存在默认账号密码admin/vulhub,如果Administration Console可以登录,就可以在后台部署war包getshell 影响版本 Jboss4.x及其之前的版本 console 管理路径为/jmx-consol…

day16【代码随想录】反转字符串、反转字符串中的元音字母、反转字符串||、反转字符串中的单词|||、替换空格、翻转字符串中的单词、左旋转字符串

文章目录一、反转字符串(力扣344)二、反转字符串中的元音字母(力扣345)三、反转字符串 II(力扣541)四、反转字符串中的单词 III(力扣557)五、替换空格(剑指 Offer 05&…

Kubernetes ~ k8s 从入门到入坑。

Kubernetes ~ k8s 从入门到入坑。 文章目录Kubernetes ~ k8s 从入门到入坑。1. Kubernetes 介绍。1.1 应用部署方式演变。1.2 kubernetes 简介。1.3 kubernetes 组件。1.4 kubernetes 概念。2. kubernetes 集群环境搭建。2.1 前置知识点。2.2 kubeadm 部署方式介绍。2.3 安装要…

人工智能前沿——玩转OpenAI聊天机器人ChatGPT(免费中文版)

目录 2022 地表最强AI聊天机器人ChatGPT诞生!!! 一、前言 🎄🎈 ChatGPT是OpenAI开发的一个大型预训练语言模型。它是GPT-3模型的变体,GPT-3经过训练,可以在对话中生成类似人类的文本响应。Cha…

Vite + Vue3 项目中,使用 vw/vh 适配移动端,并通过 Android Studio 打包

目录 1. 使用 vw/vh 适配移动端 1.1 使用 vite 初始化项目 1.2 安装插件,将 px 转化成 vw 1.2.1 在 vite.config.ts 中,声明插件 1.2.2 手写 postcss 类型声明文件,解决 路径爆红、没有提示 1.2.3 tsconfig.config.json VS tsconfig.js…

Java 8 Stream 之 collect() 的奇技淫巧!

前言 本身我是一个比较偏向少使用Stream的人,因为调试比较不方便。 但是, 不得不说,stream确实会给我们编码带来便捷。 所以还是忍不住想分享一些奇技淫巧。 正文 Stream流 其实操作分三大块 : 创建 处理 收集 我今天想分享的是 收集…

核心内参:S参数的三个重要特性——因果性、无源性与互异性

1 从一个报错开始 S参数在射频、高速领域的应用非常广泛,相关知识点也非常多。最近浏览了一本2020年新出版的书《S Parameter for Signal Integrity》,作者是IEEE Fellow、业界大牛Peter J. Pupalaikis,现任职于Teledyne LeCroy。该书写的非…

《Linux运维实战:使用Percona Backup for MongoDB备份与恢复Mongodb数据》

一、备份与恢复方案 Percona Backup for MongoDB 是一个开源、分布式和低影响的解决方案,用于MongoDB分片集群和副本集的一致备份。从版本1.7.0开始,Percona Backup for MongoDB支持物理和逻辑备份和恢复,仅支持对逻辑备份进行时间点恢复。 …

linux支持ipv6

1. kernel config [*] Networking support ---> Networking options ---> <*> The IPv6 protocol ---> 2. test 2.1 /proc/net/if_inet6 查看/proc/net/if_inet6文件是否存在以确定你的系统是否支持IPv6。 如果没有&#xff0c;可尝试如下命令加载IPv6模…

磺化氰化物7酪胺Sulfo-Cy7 TSA,Sulfo-Cyanine7 TSA,Sulfo-Cyanine7 Tyramide

Sulfo-Cyanine7 Tyramide&#xff0c;Sulfo-Cy7 TSA&#xff0c;Sulfo-Cyanine7 TSA&#xff0c;磺酸基-花青素Cy7 酪酰胺产品结构&#xff1a; 产品规格&#xff1a; 1.Packaging specification&#xff1a;5mg, 10mg, 25mg, flexible packaging, including 100mg packaging a…

11.AOP之注解配置

1.使用IDEA创建工程 2.引入项目使用的依赖 <dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.2.RELEASE</version></dependency><depend…

一、计算机网络体系结构(一)计算机网络概述

目录 1.1计算机网络的概念、组成与功能 1.2计算机网络的分类 1.2.1按分布范围分类 1.2.2按传输技术分类 1.2.3按拓扑结构分类 1.2.4按使用者分类 1.2.5按交换技术分类 1.2.6按传输介质分类 1.3计算机网络的主要性能指标 1.1计算机网络的概念、组成与功能 计算机网络的…

PHP单商户视频号对接流程

一、序关联至对应视频号&#xff0c;并在视频号带货直播中使用。 首先&#xff0c;商家需要在微信后台申请自定义版交易组件权限&#xff0c;申请成功后&#xff0c;可以将小程 二、申请开通商户号 等商户号审核之后在操作一下步骤接口调用&#xff08;pro为例&#xff09; 实…

k8s ~ 数据存储、安全认证、DashBoard。

k8s ~ 数据存储。 文章目录k8s ~ 数据存储。8.1 基本存储。8.1.1 EmptyDir。8.1.2 HostPath。8.1.3 NFS。8.2 高级存储。8.2.1 PV。8.2.2 PVC。8.2.3 生命周期。8.3 配置存储。8.3.1 ConfigMap。8.3.2 Secret。9. 安全认证。9.1 访问控制概述。9.2 认证管理9.3 授权管理。9.4 准…

Flink窗口(Flink Window)

上一篇flink watermark讲到Flink 中事件时间和水位线的概念&#xff0c;那它们有什么具体应用呢&#xff1f;当然是做基于时间的处理计算了。其中最常见的场景&#xff0c;就是窗口聚合计算。 之前我们已经了解了 Flink 中基本的聚合操作。在流处理中&#xff0c;我们往…

Neo4j的Java API操作

Neo4j的Java API操作 文章目录Neo4j的Java API操作0. 写在前面1、前置芝士2. 准备工作2.1 为项目引入Neo4j依赖2.2 启动和停止3、Java操作Neo4j4、参考资料0. 写在前面 Linux版本&#xff1a;Ubuntu Kylin 16.04Neo4j版本&#xff1a;Neo4j-3.2.7 CommunityProject Build Tool…