1. 从存储到发布:为什么要在NAS上跑WordPress?
如果你和我一样,家里有一台群晖NAS,那它大概率扮演着家庭数据中心的角色——存电影、备份照片、同步文档。但NAS的潜力远不止于此,它的核心是一台24小时开机的低功耗服务器。把WordPress这样一个动态网站搭建在NAS上,意味着你拥有了一个完全由自己掌控的、成本极低的个人发布平台。无论是写技术博客、记录生活,还是搭建作品集网站,数据都在自己手里,不用担心服务商突然关停或者涨价。
更重要的是,实现外网访问后,你的这个小站就真正“活”在了互联网上,任何有网络的地方都能访问。这听起来有点极客,但实际操作下来,你会发现群晖的图形化界面和丰富的套件,让整个过程比在云服务器上配置还要直观简单。整个过程涉及几个核心环节:在NAS内部搭建Web和数据库环境、安装配置WordPress、最后打通从公网到你家NAS的“最后一公里”。下面,我就把每一步的细节、原理,以及我踩过的坑,毫无保留地分享给你。
2. 基石准备:在群晖上构建LAMP/LEMP环境
WordPress是一个用PHP编写,依赖MySQL/MariaDB数据库的动态网站程序。所以第一步,我们需要在群晖NAS上搭建一个能运行PHP的Web服务器环境。常见的有两种组合:LAMP(Linux + Apache + MySQL/MariaDB + PHP)和LEMP(用Nginx替换Apache)。在群晖上,我们通常使用其官方套件或Docker来实现,这里我推荐两种最主流、最稳定的方案。
2.1 方案一:使用群晖Web Station和MariaDB套件(最便捷)
这是群晖官方提供的“一站式”解决方案,集成度高,管理方便,特别适合新手。
第一步:安装Web Station 在套件中心搜索并安装“Web Station”。安装完成后,打开它,你会看到它主要管理两件事: PHP版本 和 Web服务器 。
-
PHP设置 :WordPress对PHP版本有要求(通常需要7.4或以上)。在“PHP设置”标签页,群晖会提供多个PHP版本供选择。我建议安装一个相对较新且稳定的版本,例如PHP 8.0或8.1。点击“新增”,选择版本,然后 务必在扩展列表中勾选WordPress运行所必须的模块 ,至少包括:
-
mysqli或pdo_mysql:用于连接MySQL/MariaDB数据库。 -
openssl:用于HTTPS安全连接。 -
gd:用于图片处理。 -
xml:用于解析XML。 -
zip:用于主题和插件的安装更新。 勾选后安装,系统会自动配置好。
-
-
Web服务器 :默认情况下,Web Station会使用内置的“Nginx”或“Apache”。对于新手,保持默认的Nginx即可,它性能好、资源占用低。在“常规设置”中,你可以看到HTTP/HTTPS端口(默认是80和443),以及网站文件的根目录(通常是
/volume1/web/)。
第二步:安装并配置MariaDB数据库 WordPress需要数据库来存储文章、页面、用户等所有动态内容。在套件中心搜索“MariaDB 10”(或更新版本)并安装。安装过程中,系统会提示你为 root 用户设置一个 高强度密码 ,这个密码务必牢记,它是数据库的最高权限密码。
安装完成后,为了能用图形化工具管理数据库,我强烈建议再安装一个“phpMyAdmin”套件。这样,你就可以通过浏览器像访问网站一样管理你的数据库了。
关键操作:为WordPress创建专属数据库和用户
- 打开phpMyAdmin,用
root用户名和刚才设置的密码登录。 - 点击顶部“数据库”标签,创建一个新数据库,名字可以叫
wordpress_db,排序规则选择utf8mb4_unicode_ci。这是为了兼容所有语言的字符,特别是Emoji表情。 - 点击左侧导航栏的“用户账户”,点击“新增用户账户”。
- 设置一个用户名(如
wordpress_user),主机名选择“本地”(Local),这意味着这个用户只能从NAS本机连接数据库,更安全。 - 设置一个强密码。
- 在“全局权限”中,勾选这个用户对刚刚创建的
wordpress_db数据库的所有权限(如SELECT, INSERT, UPDATE, DELETE, CREATE, DROP等)。 - 点击“执行”。至此,数据库环境准备完毕。
注意 :永远不要用
root用户直接连接WordPress。为每个应用创建独立的数据库用户是基本的安全准则,可以有效防止一个站点被入侵后波及整个数据库系统。
2.2 方案二:使用Docker部署(最灵活)
如果你喜欢更干净的环境隔离,或者想尝试不同的PHP/Web服务器组合,Docker是更强大的选择。群晖的Docker套件提供了图形化界面,降低了使用门槛。
第一步:安装Docker套件并拉取镜像 在套件中心安


380

被折叠的 条评论
为什么被折叠?



