Synology(群晖)常见的配置项以及命令项





Apache2.2 相关配置与常见命令

Apache2.4 相关配置与常见命令

Nginx相关配置与常见命令

Web Station 相关配置与常见命令

群晖(Synology)套件中的 WordPress 相关配置与常见命令

安装以及启用WordPress需要配置Web Station,一般建议使用Apache来访问,具体的配置信息参考下图:

如果群晖上的WordPress使用的数据库是从其他服务器同步过来的,然后配置成功之后,打开网页显示空白的话,一般都是源网站更改过WordPress的源代码,而套件安装的是干净的版本,导致代码运行异常。

目前我的网站是阿里云服务器同步到群晖(Synology)上的,阿里云服务器上使用自定义的主题 twentyfifteen-child , 然而群晖(Synology)上安装的WordPress是没有这个自定义子主题的,我们需要同步这部分文件下来,否则页面照旧运行异常。另外,对应的插件也需要同步。

群晖使用的数据库是MariaDB10,配置数据库连接的时候,有时候需要手工指出端口号(默认3307),否则会连接失败。因此在WordPress配置的时候也需要这么操作,如果不设置,那么配置的时候提示成功,但是配置完成后,访问网站会提示数据库访问异常。

群晖可以正常运行的配置,参考下图:

测试数据库连接的代码如下:

另外,记得给访问WordPress数据库的用户授权,否则也是不能正常访问的,授权命令如下:

还有一个奇怪的问题,设置数据库参数的时候,如果访问的地址是 IP地址,可以配置成功,但是如果使用域名访问,就会配置失败,这应该算是一个问题。

可能的原因参考 域名访问群晖服务器上的网站的时候,报告500错误

另外,建议增加配置WP_HOME,WP_SITEURL来覆盖数据库中的地址,直接在wp-config.php尾部增加即可,这样可以解决网站都跳转到被同步网站的情况。

具体代码如下:

另外,建议把wp-config.php的权限修改成只有所有者才能写入,默认情况权限有些高,保证安全性。如下:

另一个常见问题是,WordPress启用WP Super Cache之后,通过.htaccess 配置重写规则(permalinks),实现缓存请求的情况下,出现404错误。如下图:

观察服务器的日志,看到如下信息:

日志中,可以看到,找不到文件/var/services/web/index.php ,而实际应当访问的文件地址是/var/services/web/wordpress/index.php

可见WP Super Cache配置的重写规则出现了问题。默认情况下WordPress都是配置在网站根目录,但是我们现在处于网站的子目录,因此我们需要对WP Super Cache生成的默认规则进行手工修改。

WP Super Cache生成的默认配置文件内容如下:

主要关注RewriteRule . /index.php [L]这条规则,可以看到是跳转到网站根目录的。我们需要修改成,跳转到WordPress根目录 RewriteRule . /wordpress/index.php [L]

调整后的规则如下:

调整之后,就不会出现404异常了。

参考链接


发布者

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注