怎么在树莓派上搭建WordPress博客网站,并发布到外网可访问?

文章目录

    • 序幕
    • 概述
    • [1. 安装 PHP](#1. 安装 PHP)
    • [2. 安装MySQL数据库](#2. 安装MySQL数据库)
    • [3. 安装 Wordpress](#3. 安装 Wordpress)
    • [4. 设置您的 WordPress 数据库](#4. 设置您的 WordPress 数据库)
      • [设置 MySQL/MariaDB](#设置 MySQL/MariaDB)
      • [创建 WordPress 数据库](#创建 WordPress 数据库)
    • [5. WordPress configuration](#5. WordPress configuration)
    • [6. 将WordPress站点发布到公网](#6. 将WordPress站点发布到公网)
    • [7. 支持好友链接样式](#7. 支持好友链接样式)
    • [8. 定制主题](#8. 定制主题)

序幕

这篇文章是关于《在树莓派上搭建web站点系列》文章的第二篇,您可以先阅读第一篇。在第一篇里,我们搭建了一个简单的静态工具站点,并且将内网站点发布到了公网。

概述

本篇,我们会让我们的站点更加实用,搭建一个Wordpress博客站点。开始您的博客时代,记录生活点滴,是不是很有意义呢?让我们开始吧!

1. 安装 PHP

  • 更新到最新仓库

    sudo apt-get update -y

  • 安装 apache2 php

    sudo apt-get install apache2 php -y

  • 重启 apache2 服务

    sudo service apache2 restart

2. 安装MySQL数据库

sudo apt-get install mariadb-server php-mysql -y
sudo service apache2 restart

3. 安装 Wordpress

cd /var/www/html/
  • 删除旧静态站点内容

    sudo rm -rf *

  • 下载最新的wordpresss压缩包

    sudo wget http://wordpress.org/latest.tar.gz

  • 解压

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

  • 配置目录权限

    sudo chown -R www-data: .

4. 设置您的 WordPress 数据库

设置 MySQL/MariaDB

sudo mysql_secure_installation
  • 此时系统会询问你:Enter current password for root (enter for none): , 按回车(enter) 键,因为第一次登陆是没有密码的。
  • 然后会询问你: Set root password? ------ 按 Y ,进行root帐号的密码设置
  • 此时,会提示 New password ,在此输入你的MySQL密码重要:请牢记这个密码,输入完成按回车,会提示re-enter new password此时再重复输入密码,回车即可。
  • 然后,询问你 Remove anonymous users ,按 Y
  • 然后,询问你 Disallow root login remotely ,按 Y
  • 然后,询问你 Remove test database and access to it ,按 Y
  • 然后,询问你 Reload privilege tables now ,按 Y
  • 最后,您将看到消息 All done! 和 Thanks for using MariaDB! 。表示已经设置完成了。

创建 WordPress 数据库

sudo mysql -uroot -p
  • 输入您创建的 root 密码。

    create database wordpress;

  • 现在将数据库权限授予 root 用户。**注意:**您需要在 IDENTIFIED BY 后输入您自己的密码。

    GRANT ALL PRIVILEGES ON wordpress.* TO 'root'@'localhost' IDENTIFIED BY 'YOURPASSWORD';

**重要提示:**将上面的 YOURPASSWORD 更改为您的密码。

  • 为了使更改生效,您需要刷新数据库权限:

    FLUSH PRIVILEGES;

  • 退出 MariaDB :

    exit

重新启动树莓派

sudo reboot

5. WordPress configuration

  • 在您的 Pi 上打开 Web 浏览器并转到 http://localhost,您应该会看到一个 WordPress 页面,要求选择您的语言。

您将看到 WordPress 欢迎屏幕

  • 点击 现在就开始! 按钮。

  • 现在填写网站基本信息如下:

    Database Name: wordpress
    User Name: root
    Password: <YOUR PASSWORD>
    Database Host: localhost
    Table Prefix: wp_

  • 单击 提交 继续。

  • 单击运行安装程序按钮。

现在你越来越近了!

填写信息:为您的站点命名,创建用户名和密码,然后输入您的电子邮件地址。点击 安装 WordPress 按钮,然后使用您刚刚创建的帐户登录。

现在您已登录并设置了站点,您可以通过访问 http://localhost/wp-admin 来查看该网站。

登录管理后台:

6. 将WordPress站点发布到公网

如果没有安装过cpolar请参考第一篇文章,安装及配置cpolar。

我们用cpolar将WordPress发布到公网前,通常需要做两件事:

安装相对URL插件

您必须确保WordPress发布为相对URL。 您可以通过安装以下插件之一来完成此操作

本例中,我们安装Relative URL插件:

  • 登录WordPress仪表盘-->插件-->安装插件
  • 在关键词搜索栏输入Relative URL 回车
  • 找到插件后点击现在安装按钮
  • 当安装成功后,点击启用按钮,激活插件。

修改config.php配置

您必须确保Wordpress了解它是为了通过隧道主机名提供服务。 您可以通过修改wp-config.php来配置Wordpress以包含以下行:

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
  • 修改wp-config.php文件

    sudo nano /var/www/html/wp-config.php

配置好以后如图:

现在,我们的博客站点可以被公网正常访问啦!让我们看看效果:

7. 支持好友链接样式

建议您更改永久链接设置以使您的 URL 更友好。

为此,请登录 WordPress 并转到仪表盘

转到设置,然后转到固定链接

选择文章名选项,然后单击保存更改

您需要启用 Apache 的重写模块:

sudo a2enmod rewrite

您还需要告诉为该站点提供服务的虚拟主机允许覆盖请求。

  • 编辑虚拟主机的 Apache 配置文件:

    sudo nano /etc/apache2/sites-available/000-default.conf

  • 在第 1 行之后添加以下几行。

    <Directory "/var/www/html">
    AllowOverride All
    </Directory>

  • 确保它在 中,如下所示:

    <VirtualHost *:80>
    <Directory "/var/www/html">
    AllowOverride All
    </Directory>
    ...

  • 保存文件并退出。

  • 重新启动Apache.

    sudo service apache2 restart

8. 定制主题

WordPress 是非常可定制的。通过在页面顶部的 WordPress 横幅中单击您的站点名称(当您登录时),您将被带到仪表板。从那里,您可以更改主题、添加页面和帖子、编辑菜单、添加插件等等。这只是在 Raspberry Pi 的 Web 服务器上设置一些有趣的东西的品尝器。

下面,我们更换一个主题试试。

  • WordPress仪表盘-->外观-->主题
  • 点击热门,选择一个自己喜欢的主题,点击安装按钮
  • 主题安装成功后,点击启用按钮。
  • 让我们重新打开站点,看一下效果:

现在,您的站点已经建好了,您可以进一步体验更多的主题,慢慢探索吧。

转载自cpolar极点云文章:在树莓派上搭建WordPress博客网站,并内网穿透发布到公网

相关推荐
曾经的三心草1 小时前
Mysql之约束与事件
android·数据库·mysql·事件·约束
guoruijun_2012_45 小时前
fastadmin多个表crud连表操作步骤
android·java·开发语言
Winston Wood5 小时前
一文了解Android中的AudioFlinger
android·音频
B.-7 小时前
Flutter 应用在真机上调试的流程
android·flutter·ios·xcode·android-studio
有趣的杰克7 小时前
Flutter【04】高性能表单架构设计
android·flutter·dart
大耳猫12 小时前
主动测量View的宽高
android·ui
帅次15 小时前
Android CoordinatorLayout:打造高效交互界面的利器
android·gradle·android studio·rxjava·android jetpack·androidx·appcompat
枯骨成佛16 小时前
Android中Crash Debug技巧
android
kim565921 小时前
android studio 更改gradle版本方法(备忘)
android·ide·gradle·android studio
咸芝麻鱼21 小时前
Android Studio | 最新版本配置要求高,JDK运行环境不适配,导致无法启动App
android·ide·android studio