【这算是我的第一次建站尝试,使用的是最为大众熟知的 WordPress,不过由于种种原因换了很多平台,之后有机会再做记录吧;兜兜转转,现在主要的方案放在了 CNblog 上,提供了更为省心并且体验不错的服务,主要是对于 Markdown 的支持非常好。】

20201126 更新:最近又重新安了一次 WordPress,经历了这么多之后回过头来,一切变得简单了起来,虽然 WordPress 对我来说还是太复杂了……成功完成了安装实现了基本的功能,之后的时间专心学习的创作吧~尽量不去折腾了。这一次的安装,参见 群晖NAS手动安装配置官方WordPress博客教程

安装 WordPress

安装之前:服务器LNMP环境搭建

想要运行Wordpress网站程序,必须要有对应的软件,也就是服务器环境,比如我们常说的LNMP就是 Linux + Nginx + Mysql + PHP 环境,这是WordPress运行的基础。

方案一:使用 宝塔面板 这款工具帮助搭建WordPress运行环境

方案二:自己搭建,因为在群晖下我们可以很方便的安装这些软件,因此在 DSM 界面进行安装,以下详解:

需要用到的几个 packages:

  • Web Station
  • phpMyAdmin
  • MariaDB 10(现在安装MariaDB的时候貌似要先设置密码了,记住用户名和密码就行)

当安装完 web station 这个套件以后,在 file station 就能发现多了一个web的文件夹,可以在我的电脑那里添加了这个文件夹,方便处理数据。

安装

从下载文件,解压缩后拖到 web 的文件夹,这个 wordpress 的文件夹就是博客网站了。

接下来设置“wordpress”的文件夹的读写权限,不然安装过程会有问题,而且后续装完博客也无法安装新主题。在 file station 里面打开“web”,找到 “wordpress”,右击“wordpress”文件夹,点击“属性”,选择“权限“。把所有http的权限都改为”读取&写入“。一开始可能不能修改,所以要先选择高级选项-使继承权限显式化。

至此,博客已经安装完毕。你只需要输入你群晖的 IP地址+端口号,就能访问编辑你的博客了。

在安装完博客以后,会遇到更新站点、主题和插件时,出现输入FTP账号密码问题。

其实这个是因为php没有取得写入权限的问题。解决办法就是打开 wp-config.php ,在最后添加一段代码:

1
2
3
define(“FS_METHOD”, “direct”);
define(“FS_CHMOD_DIR”, 0777);
define(“FS_CHMOD_FILE”, 0777);

这个问题在在之前困扰了很久,可能是因为上面的更改文件权限没做好(之后才是修改wp-config.php?)。最后重新设置了文件选择,勾选了apply to this folder, subfolders and files 然后更改 wp-config.php 就可以了。

详细可以搜索:WordPress 需要执行请求的操作访问您网页服务器的权限问题

设置外网访问 wordpress

web station 中以 Post-based 方式新建 visual host 随意选择一个HTTP端口如 666,注意相应地在路由器上设置好端口转发。document root 填写 web/wordpress PHP建议选择最新的版本(不然Wordpress会提示更新)。

然后,相应地在wordpress中修改 wordpress地址站点地址 即修改为 域名:端口号 ,然后就可以自由访问,如 http://domain:port/

WP 插件推荐

主题:Twenty Sixteen

首先是主题,选了一个简洁现代风的主题,另外,Twenty Twelve 也很好看。

子主题:Twenty Sixteen Child

创建子主题进行个性化配置,参考了以下几篇文章

  1. 创建子主题:WORDPRESS 101 PART 5: HOW TO MAKE A CHILD THEME & WHY YOU NEED ONE
  2. 取消 Twenty Sixteen 四周的黑边:WORDPRESS TWENTY SIXTEEN – GETTING RID OF THE BLACK BORDER
  3. 中文教程:使用 WordPress 的子主题(Child Themes)功能快速制作自己的主题

代码高亮:Enlighter

用过 Crayon Syntax Highlighter,但因为年久失修用起来不是很满意,现在选择这个插件,提供了中文配置环境,整体的效果很棒,在编辑页面选择区块 Enlighter Sourcesode 即可使用。 另外,也短暂用过 Code Prettify,一个不需要设置的新手友好的插件,但功能没有 Enlighter 全。

显示数学公式:MathJax

一个基于LaTeX显示数学公式的JavaScript引擎 MathJax,这个 JS 引擎的优点是全浏览器支持,不需要额外插件设置。

使用方法:仅需在主题 header.php 文件里添加 JS 引用即可,在head标签里添加以下代码即可,注意必须要放到 <?php wp_head(); ?>之前,否则不生效。

1
<script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-MML-AM_CHTML'></script>

Reference: WordPress如何显示数学公式 http://www.fanyeong.com/2017/07/21/wordpress-how-to-display-equation/

显示摘要:WP-UTF8-Excerpt

显示文章摘要,另外尝试过 WP ZN Excerpt,但不适配这个主题,目前使用的这个插件的效果还行。

表格:Easy Table

一个强化表格的的插件。

BTT:WPFront Scroll Top

一个 Back to Top 的插件,图标可自定义为图片或文字。

Markdown

关于 Markdown 是一个比较纠结的事情,希望能无缝转到网站上进行 MD 的写作,但体验总没有如 Typora 之类的软件优秀,另外,害怕因为 WordPress 的更新等问题导致页面混乱,因此,现在采用在 Typora 上进行编辑,然后复制到 WP 上再进行修改的流程。 如果要使用插件的话,使用过 WP Editor.md,感觉还不错。

Reference

  1. wordpress 搭建教程 在家用群晖搭建wordpress博客: https://www.moks.cc/?p=42
  2. WordPress 需要 执行请求的操作 访问您网页服务器的权限问题: https://www.hczdu.com/57153.html

其他

mysql

1
2
3
# 注意先更新源
sudo apt update
sudo apt install mysql-server
1
2
3
4
5
6
# 验证安装成功
mysqladmin --version
# 创建用户(默认直接 mysql 登陆无密码)
mysqladmin -u root password 123456
# 登陆
mysql -uroot -p

nginx

1
2
sudo apt install nginx
# 会创建 /usr/share/nginx 目录;配置文件 /etc/nginx/nginx.conf

PHP

1
2
3
4
apt install php-fpm
# 查看
php -v
# 配置 /etc/php-fpm.d/www.conf

查看状态

1
2
3
systemctl status php7.4-fpm
systemctl status mysql
systemctl status nginx