真正的智能家庭中心Home Assiatant

智能家居也是家庭服务器的重头戏。有人问那些智能设备厂家不是都有服务器吗?为什么还要大费周章去自己搭建服务器。原因有两个:一是因为每家智能家居平台都各自封闭,要想打通不同平台的智能家居解决方案就需要自己搭建服务器;二是国内互联网企业窃取用户隐私的行为有目共睹,已经是行业顽疾,自己搭建服务器至少没有那么受制于平台。

文章图片1

homeassistant是一个很完善的开源智能家居解决方案,我目前用的也是homeassistant。

一、docker安装homeassistant

homeassistant可以直接安装,也可以基于docker安装,理论上直接安装更好一点。但是我习惯了用docker搭建服务:

sudo docker run -d--name homeassistant--privileged--restart=unless-stopped-p 8123:8123-e TZ=Asia/Shanghai-v /home/hass/config:/configghcr.io/home-assistant/home-assistant:stable

安装之后通过http://IP:8123访问控制中心

二、安装HACS

homeassistant一大门槛就是通过yaml配置智能家居,但是现在的homeassistant已经有了很多插件让大家可以零基础上手,无需配置yaml也能使用。这就需要用到HACS,这个插件管理工具:

HACS 基于github安装,所以安装之前需要进行如下操作

1.到ipaddress查询github和githubusercontent的ip地址,并设置docker的host文件,接下来就按照我的操作进行安装即可:

sudo docker exec -i homeassistant bash#设置GitHub的IP地址echo 真实IP raw.githubusercontent.com >> /etc/hostsecho 真实IP github.com >> /etc/hosts#下载HACS一键安装脚本wget -O - https://raw.githubusercontent.com/hacs/install/main/install | bash -

安装完毕之后,需要用GitHub账户进行授权登陆:

如果你嫌上面的操作太麻烦,可以用下面的一键安装脚本,地址已经替换成国内源:

#一键安装脚本wget -q -O - https://cdn.jsdelivr.net/gh/al-one/hass-xiaomi-miot/install.sh | bash -

三、安装Xiaomi Miot Auto

接下来我们基于HACS安装一个Xiaomi Miot Auto的插件,这个插件的功能就是通过登陆小米账户,无需配置可以全部控制你的米家智能产品(目前这个插件适配的米家智能家居还是很多的)

文章图片2

安装插件之后,进入集成里搜索Xiaomi Miot Auto,添加集成并登陆你的米家账户,就可以调用其中的智能家居了。

四、配置仪表盘

当你的homeassistant接入智能家居之后,你就可以通过编辑仪表盘对智能家居进行操作和展示。

仪表盘的编辑并不复杂,第一步是选择仪表盘的类型:

文章图片3

然后就是将卡片添加实体(智能家居)这样就可以通过卡片展示或者操作智能家居了。

文章图片4

四、配置configuration.yaml

上面的方法是走了使用插件的捷径,实际上homeassistant可以通过编辑config的yaml文件实现更强大的功能。我举两个例子,第一个例子是通过编辑config添加onvif摄像头,关于摄像头的内容我之前在搭建家用安防的文章中已经有了介绍。大家可以看到我的homeassistant界面里有摄像头画面,不过homeassistant直接接入摄像头会有卡顿,建议通过zoneminder再接入homeassistant会流畅不少。

#摄像头camera:- platform: ffmpegname: mycaminput: -rtsp_transport tcp -i rtsp://admin:@192.168.1.107:10554/tcp/av0_0extra_arguments: -pred 1 -q:v 2 -s 1280x720ffmpeg:ffmpeg_bin: /usr/bin/ffmpeg

我们还可以通过homeassistant的传感器检测功能,把服务器的CPU、内存、硬盘等情况展示出来:

#传感器sensor:- platform: systemmonitorresources:- type: disk_use_percent- type: memory_use_percent- type: processor_use- type: last_boot

效果就是:

文章图片5

五、安装安卓客户端

手机端还可以通过F-Drorid安装HomeAssistant手机APP,通过智能手机对家里的智能家居进行操控。

另外homeassistant还可以接入prometheus,已经进行各种智能家居联动(甚至是不同平台的智能家居联动)和进行警报。

最新电视源

最新网络电视播放链接,对于喜欢自己diy机顶盒的朋友是好资源,其实用树莓派 zero 做一个机顶盒也就几十块钱,频道多到眼花缭乱。当然对于不喜欢捣鼓技术的也可以电脑直接播放。下面放出链接(直接下载TV.txt文件即可):

GIMP给图片重新着色和抠图

打开图片
在工具菜单中选择“按颜色选择”
删除选择的颜色区块
删除后的效果
在编辑菜单中选择“以前景色填充”
填充后的效果
修改剩下的区域
按同样方式去掉背景后的最终效果

如果是给文字描边、抠图,方法类似。

如果想达到更好的效果,可以搭配MAC系统的图片预览工具使用高清放大能力。

经过上述处理过的图片锯齿小,图片清晰

树莓派安装WordPress总结

树莓派上安装wordpress主要包括以下几个步骤和注意点:

1、烧录树莓派系统到sd卡或emmc

2、更新系统

apt-get update

apt-get upgrade

3、安装php、mysql、wordpress

修改上传文件大小限制

php.ini

sudo nano /etc/php/7.4/apache2/php.ini
修改upload_max_filesize和post_max_size这两处
upload_max_filesize = 50M, 将后面的50M修改为自己想要的大小。
post_max_size = 20M, 将这个20M修改为自己想要的大小
sudo service apache2 restart

创建数据库

wordpress

修改版权信息

footer.php

4、安装cpolar(用于远程访问)

5、安装wordpress ssl 插件

6、修改rc.local设置开机启动

sudo nano /etc/rc.local

7、配置看门狗(非必要,但强烈建议,可以大幅减少不必要的维护)

以上步骤完成后就可以通过wordpress发博客了

附录:

WordPress修改php.ini的方法:首先找到并打开php.ini文件;然后将内容配置为“file _ uploads=onupload _ tmp _ dir等等。最后,保存更改。

wordpressphp . ini修改PHP上传文件大小限制方法详解

打开php.ini,先找到它

file _ uploads=on是否允许通过HTTP上传文件的开关。默认值为开,这意味着开

upload _ tmp _ dir文件将被上传到临时文件在服务器的存储位置。如果未指定,将使用系统默认的临时文件夹

upload _ max _ filesize=8m看文本业务,也就是最大允许文件大小。默认为2M

post _ max _ size=8m指PHP通过表单POST可以接收的最大值,包括表单中的所有值。默认值为8M

一般设置好以上四个参数后,上传一个=8M的文件不是问题,网络正常的时候。

但是如果你想上传8M大的文件,只设置以上四项当然可以。

进一步配置以下参数

max _ execution _ time=600每个PHP页面运行的最大时间值(秒),默认值为30秒

max _ input _ time=600默认情况下,每个PHP页面接收数据所需的最长时间是60秒

memory _ limit=8m默认情况下,每个PHP页面消耗的最大内存是8M。修改以上参数后,在网络允许的正常情况下,可以上传大容量文件

最大执行时间=600

最大输入时间=600

memory_limit=32m

file_uploads=on

upload_tmp_dir=/tmp

upload_max_filesize=32m

用树莓派搭建自定义域名的wordpress网站

这非常适合设置您的第一个网站,不仅可以学习管理 wordpress 站点,还可以学习 Linux。您将需要一个树莓派(Raspberry Pi)、几个小时和一台计算机来下载映像。 树莓派(RPI) 是学习这些东西的完美设备。

还可以查看 RaspberryPi 的官方项目站点
来源: https://projects.raspberrypi.org/en/projects/lamp-web-server-with-wordpress

使用 Raspberry Pi Imager 安装 Raspberry Pi OS

下载适用于您的操作系统的树莓派镜像工具。它支持大多数操作系统(Windows、Mac 和 Linux)。

https://www.raspberrypi.org/downloads/

  • 运行并安装树莓派镜像工具
  • 选择 Raspberry Pi OS -> Raspberry Pi OS (32-bit)
  • 将 SD 卡插入计算机
  • 点击 Write 按钮
QQ20210630-204122@2x

设置 Apache Web 服务器

Apache 是一种流行的 Web 服务器应用程序,您可以将其安装在 Raspberry Pi 上以允许它为网页提供服务。

Apache 本身可以通过 HTTP 提供 HTML 文件。通过附加模块,它可以使用 PHP 等脚本语言提供动态网页。

sudo apt-get install apache2 php  -y
sudo service apache2 restart

测试 web 站点

默认情况下,Apache 将测试 HTML 文件放在 web 文件夹中,您可以从您的 Pi 或网络上的另一台计算机查看该页面。

在 Raspberry Pi 上打开 Apache 默认网页:

  • 通过从菜单中选择 Internet > Chromium Web 浏览器打开 Chromium。
  • 输入地址 http://localhost

您应该在浏览器窗口中看到:

apache-it-works

安装静态样例站点

为了让站点的内容更有意义,我们部署一个简单的静态演示站点–冥想放松站点。

cd /var/www/html/
sudo rm *

将web站点发布到公网

目前,这个站点只能在局域网站可以被访问,公网用户是访问不到的。要想所有人访问你创建的漂亮站点,我们需要做如下工作。

安装 Cpolar

cpolar是一款内网穿透工具,可以将您的内网站点暴露到公网上,使所有人可以访问到你的站点。

  • cpolar一键安装脚本:(国内用户)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 或短链接安装方式:(国外用户)
curl -sL https://git.io/cpolar | sudo bash
  • 查看cpolar版本信息
cpolar version

如果正常显示,则安装成功

cpolar进行token认证

如果您还没有cpolar账号,请去cpolar官网注册并登录后台获取认证token

cpolar authtoken xxxxxxxxxxxxxxxxxx

生成cpolar随机域名网址

cpolar http -region=cn_vip 80

上图显示,cpolar将内网站点,发布到了一个随机域名网址:https://711d7522.vip.cpolar.cn

  • 我们打开浏览器试一下:https://711d7522.vip.cpolar.cn

现在,我们已经发布了内网的web站点到公网,任何人都可以访问到它。

回到终端窗口,按CTRL+C键,退出cpolar

此时,公网地址不再能被访问。

生成cpolar二级子域名

虽然已经发布到公网,但域名是随机变化的,只适合临时测试使用。如果要长期使用,我们要配置二级子域名。

操作步骤:

  • 升级到cpolar基础套餐
  • 登录到cpolar后台–>预留–>保留二级子域名,例如添加dev9,地区选择VIP China地区

在前台终端测试域名

cpolar http -subdomain=dev9 -region=cn_vip 80

ShellCopy

如果显示正常,则说明我们已经配置好了。

QQ20210701-033554@2x

用新的域名在浏览器里访问:https://dev9.vip.cpolar.cn

正常则说明我们的固定二级子域名配置好了。

将参数保存到cpolar配置文件中

刚刚我们在前台运行cpolar程序,关掉后,域名消失,现在我们将参数保存到配置文件中。以支持开机后台自启动运行。

  • 编辑配置文件
nano /usr/local/etc/cpolar/cpolar.yml

ShellCopy

如图:

QQ20210701-024834@2x

上图为样例配置文件,它会配置两个默认隧道:一个ssh隧道和一个website隧道。

参数说明:

authtoken: xxxxxxxxxxxx #认证token
tunnels:
  ssh:              #隧道名称,表示ssh,名称可以自定义
    addr: 22        #端口号为22
    proto: tcp      #协议tcp
    region: cn_vip  #地区,cn_vip,可选:us,hk,cn,cn_vip
  website:          #隧道名称,用户可以自定义,但多隧道时,不可重复
    addr: 8080      #本地Web站点端口
    proto: http     #协议http
    region: cn_vip  #地区,cn_vip,可选:us,hk,cn,cn_vip

YAMLCopy

本例中,我们需要修改如下内容:

  • 将website隧道的默认8080端口修改为80
  • 添加一行 subdomain: "你的二级子域名"

修改后的效果如图:

QQ20210701-040329@2x

注意: 配置文件是yaml格式的,缩进敏感,而且不能有TAB键

然后按CTRL+X,退出,提示你是否保存,回答Y,确认保存文件路径,回车

测试修改后配置文件

在前台启动所有隧道测试

cpolar start-all

ShellCopy

QQ20210701-035229@2x

如上图显示,则为正常,按CTRL+C退出

如果报错,会提示配置文件某行有错误,请重新修改。直到类似上图正确输出。

配置cpolar服务开机自启动

  • 配置cpolar开机自启动
sudo systemctl enable cpolar

ShellCopy

  • 守护进程方式,启动cpolar
sudo systemctl start cpolar

ShellCopy

  • 查看cpolar守护进程状态
sudo systemctl status cpolar

ShellCopy

如图说明,启动状态成功

QQ20210701-040009@2x
  • 重新启动
sudo reboot

ShellCopy

重启后,检查cpolar隧道是否仍在线

访问后台–>状态 https://dashboard.cpolar.com/status

如图说明配置成功

QQ20210701-042829@2x

安装 PHP

  • 更新到最新仓库
sudo apt-get update -y
  • 安装 apache2 php
sudo apt-get install apache2 php  -y
  • 重启 apache2 服务
sudo service apache2 restart

安装MySQL数据库

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

安装 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: .

设置您的 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

WordPress configuration

  • 在您的 Pi 上打开 Web 浏览器并转到 http://localhost,您应该会看到一个 WordPress 页面,要求选择您的语言。
1-QQ20210702-050009@2x
  • 选择您的语言,然后单击 Continue 按钮。

您将看到 WordPress 欢迎屏幕

2-QQ20210702-050632@2x
  • 点击 现在就开始! 按钮。
  • 现在填写网站基本信息如下:
Database Name:      wordpress
User Name:          root
Password:           <YOUR PASSWORD>
Database Host:      localhost
Table Prefix:       wp_
  • 单击 提交 继续。
  • 单击运行安装程序按钮。

现在你越来越近了!

3-QQ20210702-051441@2x

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

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

登录管理后台:

4-QQ20210702-052346@2x

将WordPress站点发布到公网

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

安装相对URL插件

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

  • https://github.com/optimizamx/odt-relative-urls
  • http://wordpress.org/plugins/relative-url/
  • http://wordpress.org/plugins/root-relative-urls/

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

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

修改config.php配置

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

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);

CodeCopy

  • 修改wp-config.php文件
sudo nano /var/www/html/wp-config.php

ShellCopy

配置好以后如图:

8-QQ20210702-055708@2x

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

9-QQ20210702-055852@2x

支持好友链接样式

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

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

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

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

5-QQ20210702-053322@2x

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

sudo a2enmod rewrite

ShellCopy

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

  • 编辑虚拟主机的 Apache 配置文件:
sudo nano /etc/apache2/sites-available/000-default.conf

ShellCopy

  • 在第 1 行之后添加以下几行。
<Directory "/var/www/html">
    AllowOverride All
</Directory>

CodeCopy

  • 确保它在 <VirtualHost *:80> 中,如下所示:
<VirtualHost *:80>
    <Directory "/var/www/html">
        AllowOverride All
    </Directory>
    ...

CodeCopy

  • 保存文件并退出。
  • 重新启动Apache.
sudo service apache2 restart

ShellCopy

定制主题

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

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

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

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

wordpress 网站安装ssl证书

首先需要通过wordpress后他安装ssl插件,这里选择realy simple ssl,安装完成后下载证书等文件到指定目录,然后执行以下命令即可

cpolar http -hostname=secure.example.com -key=/path/to/tls.key -crt=/path/to/tls.crt 80

树莓派安装cURL

树莓派的部分插件需要cURL依赖,比如ssl,目前网上提供的方式非常单一,基本如下:

wget http://curl.haxx.se/download/curl-7.80.0.tar.gz

2. tar -xzvf curl-7.80.0.tar.gz

3. cd curl-7.80.0/

4. ./configure 耗时2分钟左右

5. make

6. sudo make install

以上方式实际使用安装过程麻烦而且易出问题,现提供一个简单的方式:

sudo apt-get install php7.4-curl (我用的是php7.4,各位根据自己的版本修改即可)

安装完成后需要重启apache

sudo service apache2 restart

树莓派上安装WordPress

WordPress 是一个非常受欢迎的开源博客平台和内容管理平台(CMS)。它很容易搭建,而且还有一个活跃的开发者社区构建网站、创建主题和插件供其他人使用。

虽然通过一键式 WordPress 设置获得托管包很容易,但也可以简单地通过命令行在 Linux 服务器上设置自己的托管包,而且树莓派是一种用来尝试它并顺便学习一些东西的相当好的途径。

一个经常使用的 Web 套件的四个部分是 Linux、Apache、MySQL 和 PHP。这里是你对它们每一个需要了解的。

Linux

树莓派上运行的系统是 Raspbian,这是一个基于 Debian,为运行在树莓派硬件上而优化的很好的 Linux 发行版。你有两个选择:桌面版或是精简版。桌面版有一个熟悉的桌面还有很多教育软件和编程工具,像是 LibreOffice 套件、Mincraft,还有一个 web 浏览器。精简版本没有桌面环境,因此它只有命令行以及一些必要的软件。

这篇教程在两个版本上都可以使用,但是如果你使用的是精简版,你必须要有另外一台电脑去访问你的站点。

Apache

Apache 是一个受欢迎的 web 服务器应用,你可以安装在你的树莓派上伺服你的 web 页面。就其自身而言,Apache 可以通过 HTTP 提供静态 HTML 文件。使用额外的模块,它也可以使用像是 PHP 的脚本语言提供动态网页。

安装 Apache 非常简单。打开一个终端窗口,然后输入下面的命令:

sudo apt install apache2 -y

Apache 默认放了一个测试文件在一个 web 目录中,你可以从你的电脑或是你网络中的其他计算机进行访问。只需要打开 web 浏览器,然后输入地址 <http://localhost>。或者(特别是你使用的是 Raspbian Lite 的话)输入你的树莓派的 IP 地址代替 localhost。你应该会在你的浏览器窗口中看到这样的内容:

这意味着你的 Apache 已经开始工作了!

这个默认的网页仅仅是你文件系统里的一个文件。它在你本地的 /var/www/html/index/html。你可以使用 Leafpad 文本编辑器写一些 HTML 去替换这个文件的内容。

cd /var/www/html/
sudo leafpad index.html

保存并关闭 Leafpad 然后刷新网页,查看你的更改。

MySQL

MySQL(读作 “my S-Q-L” 或者 “my sequel”)是一个很受欢迎的数据库引擎。就像 PHP,它被非常广泛的应用于网页服务,这也是为什么像 WordPress 一样的项目选择了它,以及这些项目是为何如此受欢迎。

在一个终端窗口中输入以下命令安装 MySQL 服务(LCTT 译注:实际上安装的是 MySQL 分支 MariaDB):

sudo apt-get install mysql-server -y

WordPress 使用 MySQL 存储文章、页面、用户数据、还有许多其他的内容。

PHP

PHP 是一个预处理器:它是在服务器通过网络浏览器接受网页请求是运行的代码。它解决那些需要展示在网页上的内容,然后发送这些网页到浏览器上。不像静态的 HTML,PHP 能在不同的情况下展示不同的内容。PHP 是一个在 web 上非常受欢迎的语言;很多像 Facebook 和 Wikipedia 的项目都使用 PHP 编写。

安装 PHP 和 MySQL 的插件:

sudo apt-get install php php-mysql -y

删除 index.html,然后创建 index.php

sudo rm index.html
sudo leafpad index.php

在里面添加以下内容:

<?php phpinfo(); ?>

保存、退出、刷新你的网页。你将会看到 PHP 状态页:

WordPress

你可以使用 wget 命令从 wordpress.org 下载 WordPress。最新的 WordPress 总是使用 wordpress.org/latest.tar.gz 这个网址,所以你可以直接抓取这些文件,而无需到网页里面查看,现在的版本是 5.8.2。

确保你在 /var/www/html 目录中,然后删除里面的所有内容:

cd /var/www/html/
sudo rm *

使用 wget 下载 WordPress,然后提取里面的内容,并移动提取的 WordPress 目录中的内容移动到 html 目录下:

sudo wget http://wordpress.org/latest.tar.gz
sudo tar xzf latest.tar.gz
sudo mv wordpress/* .

现在可以删除压缩包和空的 wordpress 目录了:

sudo rm -rf wordpress latest.tar.gz

运行 ls 或者 tree -L 1 命令显示 WordPress 项目下包含的内容:

.
├── index.php
├── license.txt
├── readme.html
├── wp-activate.php
├── wp-admin
├── wp-blog-header.php
├── wp-comments-post.php
├── wp-config-sample.php
├── wp-content
├── wp-cron.php
├── wp-includes
├── wp-links-opml.php
├── wp-load.php
├── wp-login.php
├── wp-mail.php
├── wp-settings.php
├── wp-signup.php
├── wp-trackback.php
└── xmlrpc.php
3 directories, 16 files

这是 WordPress 的默认安装源。在 wp-content 目录中,你可以编辑你的自定义安装。

你现在应该把所有文件的所有权改为 Apache 的运行用户 www-data

sudo chown -R www-data: .

WordPress 数据库

为了搭建你的 WordPress 站点,你需要一个数据库。这里使用的是 MySQL。

在终端窗口运行 MySQL 的安全安装命令:

sudo mysql_secure_installation

你将会被问到一系列的问题。这里原来没有设置密码,但是在下一步你应该设置一个。确保你记住了你输入的密码,后面你需要使用它去连接你的 WordPress。按回车确认下面的所有问题。

当它完成之后,你将会看到 “All done!” 和 “Thanks for using MariaDB!” 的信息。

在终端窗口运行 mysql 命令:

sudo mysql -uroot -p

输入你创建的 root 密码(LCTT 译注:不是 Linux 系统的 root 密码,是 MySQL 的 root 密码)。你将看到 “Welcome to the MariaDB monitor.” 的欢迎信息。在 “MariaDB [(none)] >” 提示处使用以下命令,为你 WordPress 的安装创建一个数据库:

create database wordpress;

注意声明最后的分号,如果命令执行成功,你将看到下面的提示:

Query OK, 1 row affected (0.00 sec)

把数据库权限交给 root 用户在声明的底部输入密码:

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

为了让更改生效,你需要刷新数据库权限:

FLUSH PRIVILEGES;

按 Ctrl+D 退出 MariaDB 提示符,返回到 Bash shell。

WordPress 配置

在你的 树莓派 打开网页浏览器,地址栏输入 http://localhost。选择一个你想要在 WordPress 使用的语言,然后点击“Continue”。你将会看到 WordPress 的欢迎界面。点击 “Let’s go!” 按钮。

按照下面这样填写基本的站点信息:

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

点击 “Submit” 继续,然后点击 “Run the install”。

按下面的格式填写:为你的站点设置一个标题、创建一个用户名和密码、输入你的 email 地址。点击 “Install WordPress” 按钮,然后使用你刚刚创建的账号登录,你现在已经登录,而且你的站点已经设置好了,你可以在浏览器地址栏输入 http://localhost/wp-admin 查看你的网站。

永久链接

更改你的永久链接设置,使得你的 URL 更加友好是一个很好的想法。

要这样做,首先登录你的 WordPress ,进入仪表盘。进入 “Settings”,“Permalinks”。选择 “Post name” 选项,然后点击 “Save Changes”。接着你需要开启 Apache 的 rewrite 模块。

sudo a2enmod rewrite

你还需要告诉虚拟托管服务,站点允许改写请求。为你的虚拟主机编辑 Apache 配置文件:

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

在第一行后添加下面的内容:

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

确保其中有像这样的内容 <VirtualHost *:80>

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

保存这个文件,然后退出,重启 Apache:

sudo systemctl restart apache2

下一步?

WordPress 是可以高度自定义的。在网站顶部横幅处点击你的站点名,你就会进入仪表盘。在这里你可以修改主题、添加页面和文章、编辑菜单、添加插件、以及许多其他的事情。

这里有一些你可以在树莓派的网页服务上尝试的有趣的事情:

  • 添加页面和文章到你的网站
  • 从外观菜单安装不同的主题
  • 自定义你的网站主题或是创建你自己的
  • 使用你的网站服务向你的网络上的其他人显示有用的信息

不要忘记,树莓派是一台 Linux 电脑。你也可以使用相同的结构在运行着 Debian 或者 Ubuntu 的服务器上安装 WordPress。