涉及到服务器和Dokuwiki本身的安装事项。 参考文章: Installing Dokuwiki on Ubuntu 18.04 with Nginx 如何在 Ubuntu 20.04 上安装 Nginx
具体安装过程请参考 Nginx 服务器 笔记中的记述。
安装官方文档指示就可以了,并不复杂。配置文件的名字可以随便起,网站放置的地方也可以随便。需要注意的只有两点: 假设 dokuwiki.conf为配置文件, 项目地址为 /var/www/html/dokuwiki
sudo vim /etc/nginx/sites-available/dokuwiki.conf sudo ln -s /etc/nginx/sites-available/dokuwiki.conf /etc/nginx/sites-enabled/ # 配置文件修改此项 # root /var/www/html/dokuwiki;
修改完好用Nginx的命令行检查一下,就可以启动服务器了
sudo nginx -t sudo systemctl restart nginx # reload, start 都行
更改网站数据文件夹的所有者
chown -R www-data:www-data /var/www/html/dokuwiki
打开网站的配置文件,/etc/nginx/sites-available/mywebsit.conf
输入以下内容:
location ~ /(data|conf|bin|inc|vendor)/ {deny all;}
然后重启服务器,放置一份文件到~/data/pages/wiki/目录下,并测试直接访问文件 http://wiki.goldentianya.de/data/pages/wiki/site_notice.txt
。如果仍然能访问,说明安全措施没有生效。生效的话应该会收到一个403拒绝。
安装了一些过期或者有问题的插件,会导致网站不可访问,出现500问题。解决方案是进入网站的libs/plugin
目录下,删除掉有问题那个plugin就可以了。
需要修改 conf/local.php
,换回原来的模版。或者删除此文件,使用备份文件 local.php.bak.php
。估计这个问题发生过不少,新版已经对这些做好了备份。
尽管添加了安全保护,但万一受到黑客攻击或者系统不明原因导致的系统崩溃,至少有一份可以恢复的文件。利用系统的定时任务进行备份。制定一份脚本
并且更改为可执行文件, chmod +755 /home/backupwiki.sh
。
$> crontab -e # 每周日凌晨2点执行数据库备份 0 2 * * * /home/backupwiki.sh
备份到第二台服务器有两种方式,第一种远程推送:
第二种方式在第二台服务器编写一个拉取文件的脚本,比备份时间晚半个小时开始执行 30 2 * * * expect /home/copyfile.exp
expect {Password:….} 要注意大小写。有些服务器大些,有些是小写。
参考上文,将新的文件拷贝到
'cp' -af /home/ftp/upgrade/dokuwiki/* /home/ubuntu/www/html/ // 改变用户 chown -R www-data:www-data /home/ubuntu/www/html/