扫描二维码关注官方公众号
12下一页
返回列表 发布新帖

[玩法/技巧] 群晖下搭建wordpress博客站点

36155 31
发表于 2016-11-26 17:09:54 | 显示全部楼层 阅读模式

来吧兄弟,一起玩一起讨论!

您需要 登录 才可以下载或查看,没有账号?注册

×
本帖最后由 watermoon 于 2017-8-15 09:48 编辑

  如果说群晖只是拿来做数据仓库的话,那么这个仓库未免有点空旷了。如果说群晖只是拿来做下载的话,那么它就只是一台老牛破车。群晖的作用还有很多值得我们去进一步挖掘,这里我只想把自己这几个月亲身实践,试用了黑群白群多个版本之后,搭建wordpress博客站点的一些心得体会,完整地记录下来,供同好们参考。
  wordpress是一个强大的开源博客程序,在接触群晖以前,我就已经为单位的网站架设过。当发现群晖有相应的套件可以直接采用时,颇感欣喜。尽管网络上有许多免费的博客站点可以让我们书写,但是谁也不能保证它们是否能长期存在下去。所以选博客网站,一是要可靠,二是要国外品牌。我一开始是千选万选选了微软的博客livespace来写的。心想微软不会说到就倒吧,它要倒了,电脑也进化了吧。不成想,live品牌整个被砍掉了,博客也就泡汤了。当然微软还是有善后的,国外的自动转给wordpress,国内因为“你懂的”原因所以不能给wordpress。所以我只能在新浪和网易上都占了地方。然而,又是因为“你懂的”原因,这两个地方都不太平,很容易被删文章或者评论。因此还是自己有服务器来搭建博客最可靠了。以上是前言。

  进入正题,先说说如何在群晖DSM5.2系统下搭建wordpress博客站点。为何不直接说现在最新的DSM6.0.2呢?看下去就知道了。

一、在群晖DSM5.2系统下搭建wordpress博客站点。

  1)打开web服务。wordpress博客程序就是一套网站程序,所以首先要打开系统的web服务。
webstation.PNG
  在这里可以先简单地勾选启用即可,至于里面的设置以后用到时再说。在开始菜单里打开web station,若能显示下图,则表明已经开启了群晖系统的web服务了。
web首页.png
  2)下载并安装wordpress套件。这个不用多说,群晖套件比windows下建站要方便多了,不需要考虑apache啊、php啊、mySQL啊等等,傻瓜式安装。它会自动提示需要安装数据库套件,一路“下一步”,直至完成。
套件中心.PNG
  至于数据库密码,若是需要,则首先要打开数据库套件在其中设置好(默认是空密码),再在wordpress套件安装的这一步中输入密码。
MariaDB.PNG
  3)初始化wordpress。在开始菜单里点击wordpress,跳出博客网站的初始化页面,然后按需填入相关内容,一路下去就建好了博客站点。
wordpress安装界面.PNG
  现在只要在浏览器的地址栏中输入群晖服务器所在地址在其后加上/wordpress/即可在局域网中访问到wordpress博客站点。当然想要让主页自动跳转到博客首页的话,可以修改共享目录web下的index.html文件,在<title></title>标签之间加入自动跳转代码,如:
  1. <meta http-equiv="refresh" content="0.1;url=/wordpress/">
复制代码
  4)外网访问设置。在这之前其实wordpress站点已经搭建完毕,但关键问题是我们要让外网访问到站点。外网访问,白群有群晖提供的免费域名XXXXXX.synology.me,也可以用其他免费的动态域名。比如,我就用的是watermoon.f3322.net。
外部访问.PNG
  理论上只要在群晖的控制面板“外部访问”中新增好DDNS,在“路由器配置”中做好端口映射,就能从外网访问到博客站点。然而,现实却往往与理论相悖。宽带运营商一般都会无耻地封闭个人用户的上行80端口,导致无法通过域名访问直接访问站点。解决办法就是新增端口,在控制面板“web服务”中,勾选额外端口,填入自定义端口号,比如:8888(好像电信连8080都封掉的),再到“路由器配置”中做好端口映射。以后在外网访问时,地址上必须加端口号才行。例如:http://watermoon.f3322.net:8888/
  5)外网访问为什么wordpress站点只能看到首页?这个问题是wordpress才会碰到的。因为这套网站里面的链接都是采用绝对路径,而不是相对路径,所以端口号改变之后,其内部的链接仍然是没有端口号的,导致外网访问异常。最简单的办法是登录wordpress后台,修改设置-常规选项中的站点地址,加入端口号。
wordpress设置.PNG
注意:这样做有一个副作用,就是再也无法在内网中直接输入IP地址访问站点了。解决办法就是要让wordpress自动获取站点地址。我们在web共享目录下的wordpress目录中找到设置文件wp-config.php,在文件的最后添加一段代码:

  1. $home = 'http://'.$_SERVER['HTTP_HOST']; #获取当前访问的域名
  2. $siteurl = 'http://'.$_SERVER['HTTP_HOST'];
  3. define('WP_HOME', $home.'/wordpress');
  4. define('WP_SITEURL', $siteurl.'/wordpress');
复制代码
  保存以后,无论是在外网用动态域名+端口,还是在内网直接输入IP地址,都能正常访问wordpress博客站点中的所有链接了。

  至此,在群晖DSM5.2系统下搭建wordpress博客站点大功告成!

二、在群晖DSM6.0.2系统下搭建wordpress博客站点。
  照理说,系统应该越新越简便,然而在DSM6下搭建wordpress却变成了噩梦。
  1)安装套件。这个仍然很自动、很傻瓜,会提示还需要安装web服务和数据库套件。注意:新的系统把web服务也做成了套件,而不再是集成于系统的控制面板中了,产生什么影响,下文再说。
  2)初始化wordpress。以上大致与5.2系统下没什么区别,到了这里第一个大问题出现了。初始化时选了简体中文,完成后进入仪表盘,首页居然是英文的,里面很多都汉化不全,这是怎么回事呢?后来无意间发现了群晖在站点插件里加了一个翻译插件。问题就在这里了!尽管没有启用,但它对wordpress造成了困扰。
wordpress语言选择插件.PNG
  我试着启用它,选择英文,然后再关闭它。这之后,再在wordpress的设置中选择简体中文,终于让整个站点设置都显示为中文状态了。然而,与此同时,我又发现wordpress居然不能自动检查到最新版本了,请看截图。
wordpress_更新异常.JPG
  再来看看正常状态下的截图。
wordpress正常更新界面.PNG
  问题似乎是出在wp-config.php中被群晖加了一段不自动检查的代码:
  1. define( 'AUTOMATIC_UPDATER_DISABLED', true );
  2. add_filter('pre_site_transient_update_core','__return_null');
复制代码
  可是,就算删除这段代码,也还是无法找回升级按钮,只能看到新版的版本号。你说群晖是在折腾啥?我只能认为这是群晖故意不让用户通过wordpress自动升级的,而是一定要通过群晖的套件方式进行升级,因为群晖在wordpress的源代码中修改了其他东西,怕自动升级冲掉这些东西。
  3)外网访问问题。接着有一个大问题出现了。上文讲过新的系统把web服务也做成了套件,但这个套件里面却再也找不到打开额外web服务端口的设置了!有网友去信咨询过,确认是群晖删除了这个设置。可恶啊!难道他们不知道国内电信基础运营商都是封掉80上行端口的吗?怎么办?通过不懈努力和盲目摸索。我终于找到了一个替代办法。添加虚拟主机,设定其端口号为8888,然后在外部访问中把路由器的8888映射到群晖的8888上。注意,不能使用路由器8888映射到群晖的80,为什么?因为当外网访问时必须始终显示端口号才行,而80端口号会被系统自动省略,那就会导致错误。在这里,我一直遇到问题,就是在外网访问时只能显示首页,却不能显示CSS等其他内容,找了半天也没查出问题,我只得把5.2下的wp-config.php拷贝出来覆盖6.0.2下的相应文件,终于解决了问题。至于有何副作用,目前还没发现。
  现在貌似正常了,但折腾了我好多时间,谁说群晖比windows下架设wordpress方便了?

补记:

  群晖系统在不断升级和完善。最近的DSM6.1.3版本中,wordpress套件也有了进步。尽管版本号还不算最新,只是4.7.5,不过上文提到的显示中文界面的小麻烦已经解决了,可以直接在设置中选择中文。当然如果想要让wordpress自动升级到最新版的话,按照上文中注释掉那句不允许检测版本的语句即可。中文版的升级按钮还是看不见,不过我们可以先升级成英文版的,其后就会出现中文版的升级按钮。现在已经可以很方便地升级到4.8.1中文版了。
有水皆含月,无山不带云。

评论31

watermoonVIPLv.9 发表于 2020-5-20 09:32:25 | 显示全部楼层
SoulDirge 发表于 2020-5-19 16:24
看了你的教程,博客成功搭建完成,有个小问题要请教下,wordpress安装完成需要使用IP/wordpress才能访问, ...

内网里可以直接使用IP地址访问,如果需要外网访问,一般用DDNS把NAS的80和443端口转发出去。鉴于国内电信运营商现在都封锁了这些端口,所以要用frp、ngrok等方式,然后弄个免费域名直接指向博客站点。这个方法可以参考坛子里的精华帖。
回复 点赞

使用道具 举报

SoulDirgeLv.1 发表于 2020-5-19 16:24:52 | 显示全部楼层
看了你的教程,博客成功搭建完成,有个小问题要请教下,wordpress安装完成需要使用IP/wordpress才能访问,如果直接输入IP,就会访问web附录下系统预设的index.html,如何做到使用IP直接访问博客,尝试过在web station建立以80/443为端口的虚拟主机,结果无效
回复 点赞

使用道具 举报

watermoonVIPLv.9 发表于 2018-8-30 09:23:59 | 显示全部楼层
macliang 发表于 2018-8-29 22:55
我用的DS916+ 6.2系统,搭建好WordPress系统后局域网访问没有问题(方法方法:ip/wordpress)。最近为家里电 ...

现在回复需要审核的吗?刚才回复了一句,却不见了。
有水皆含月,无山不带云。
回复 点赞

使用道具 举报

watermoonVIPLv.9 发表于 2018-8-30 09:17:41 | 显示全部楼层
macliang 发表于 2018-8-29 22:55
我用的DS916+ 6.2系统,搭建好WordPress系统后局域网访问没有问题(方法方法:ip/wordpress)。最近为家里电 ...

这个问题主要还是wordpress只认绝对路径的关系,所以如果通过IP方式访问博客则无法实现内外网同时正常显示。解决办法就是必须为wordpress申请一个自己的域名,并且在设置中写入这个域名。
wordpresssetting.JPG
推荐使用ngrok.cc来穿透内网,用这个方式可以实现内外网使用同一个域名访问wordpress。缺点就是免费的服务器速度不够快,肯花钱就不怕了。
有水皆含月,无山不带云。
回复 点赞

使用道具 举报

macliangLv.4 发表于 2018-8-29 22:55:13 | 显示全部楼层
我用的DS916+ 6.2系统,搭建好WordPress系统后局域网访问没有问题(方法方法:ip/wordpress)。最近为家里电信光猫申请了公网ip,并做好了80端口映射,浏览器中公网ip访问出现nas的Web页面,显示正常。但是只要加上/wordpress路径,也就是访问WordPress网站,连接后公网ip马上就被转换为局域网ip了,导致在外网无法访问。
我查了一下wp-config.php文档,发现其中有代码
  1. define('DOMAIN_CURRENT_SITE', '10.0.0.7');
复制代码
其中10.0.0.7就是NAS的局域网ip,将此处改为公网ip后,显示连接数据库错误,折腾了半天,实在搞不清楚到底是什么地方出问题,楼主能指点一下吗?
谢谢
回复 点赞

使用道具 举报

watermoonVIPLv.9 发表于 2018-8-16 10:45:47 | 显示全部楼层
6.2以后,群晖的套件越做越好了,唯一问题就是禁用了自动升级功能。经过与群晖的沟通,确实是故意禁用的,主要是担心非自家的套件会与系统冲突。只要用户积极反馈,群晖工程师会及时升级套件的。所以还是建议大家直接使用套件安装wordpress。
有水皆含月,无山不带云。
回复 点赞

使用道具 举报

vyouLv.2 发表于 2018-8-13 13:18:22 | 显示全部楼层
谢谢。很有帮助
回复 点赞

使用道具 举报

joe2011Lv.1 发表于 2018-4-9 17:53:03 | 显示全部楼层
蛮好的,收藏了谢谢哦
回复 点赞

使用道具 举报

9you99Lv.1 发表于 2018-3-20 11:10:59 | 显示全部楼层
群晖下搭建wordpress博客站点
回复 点赞

使用道具 举报

sdlaobingVIPLv.3 发表于 2017-8-16 08:32:19 | 显示全部楼层
回复上不去吗?楼主辛苦了!收藏并对照学习,出问题再请教了。
回复 点赞

使用道具 举报

sdlaobingVIPLv.3 发表于 2017-8-16 08:28:06 | 显示全部楼层
这个强,先收藏起来,后对照试试。楼主辛苦了!问好
回复 点赞

使用道具 举报

zhangshumingLv.1 发表于 2017-7-12 17:30:58 | 显示全部楼层
谢谢分享。。
回复 点赞

使用道具 举报

watermoonVIPLv.9 发表于 2017-6-9 09:54:00 | 显示全部楼层
milkha 发表于 2017-6-9 09:33
请教,群晖建站后,如何给网站安装SSL证书。

证书申请后,下载到本地,然后在控制面板-安全性中添加进去即可。
有水皆含月,无山不带云。
回复 点赞

使用道具 举报

snowman1003VIPLv.7互助团队 发表于 2017-6-9 09:49:49 | 显示全部楼层
感谢楼主分享,一直以为wordpress只能内部访问
回复 点赞

使用道具 举报

milkha 发表于 2017-6-9 09:33:10 | 显示全部楼层
请教,群晖建站后,如何给网站安装SSL证书。
回复 点赞

使用道具 举报

watermoonVIPLv.9 发表于 2017-4-27 11:28:39 | 显示全部楼层
robbing 发表于 2017-4-26 23:33
5.2下的wp-config.php麻烦共享下

抱歉,这个文件我没保存,后来我还是不用套件直接装了。参见:
不用群晖套件在DSM下架设wordpress博客站点
有水皆含月,无山不带云。
回复 点赞

使用道具 举报

robbingLv.2 发表于 2017-4-26 23:33:11 | 显示全部楼层
5.2下的wp-config.php麻烦共享下
回复 点赞

使用道具 举报

tvrcfdfeLv.8 发表于 2017-4-11 09:25:05 | 显示全部楼层
学习了 感觉我不怎么需要写这个 嘿嘿
回复 点赞

使用道具 举报

潜水猫Lv.5 发表于 2017-4-10 22:26:30 | 显示全部楼层
为什么我设置好了,但是外网报500错误呢?内网没问题可以访问
回复 点赞

使用道具 举报

回复

懒得打字嘛,点击右侧快捷回复 【本站酷狼4T,750元】
您需要登录后才可以回帖 登录 | 注册

本版积分规则

投诉/建议联系

support@gebi1.cn

未经授权禁止转载,复制和建立镜像,
如有违反,追究法律责任
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2024 隔壁网 版权所有 All Rights Reserved. 粤ICP备14056481号-1
关灯 在本版发帖
扫一扫添加微信客服
返回顶部
快速回复 返回顶部 返回列表