dokuwiki的安装技巧

1.为防止别人找到数据,安全设置:

如果你不使用 Apache Web 服务器又或者你的 Apache 不能使用 “.htaccess” 文件,那么你需要手动设置,确保你的安装安全可靠。

以下目录不应该从网络直接访问:

data
conf
bin
inc(尽管可访问时没有危险)
要检查你是否需要调整访问权限,你可以试着访问http://yourserver.com/data/pages/wiki/dokuwiki.txt。你应该无法以这种方法访问到该文件。

如果你的目录没有进行适当的安全设置,请阅读以下小节,它会告诉你如何做到这些。

在Apache中拒绝目录访问
最简单的方法就是在您的 Apache 配置中开启 .htaccess 支持。请参考Apache的 .htaccess 教程。

在 IIS 中拒绝目录访问,可以在 IIS 的配置设置中禁用上述目录的访问。

打开配置工具:开始 → 设置 → 控制面板 → 管理员工具 → IIS 服务
浏览到你想要保护的目录:本地计算机 → 网站 → 默认网站 → 目录的路径.
右击文件夹选择属性 → 目录安全 → IP地址和域名限制 → 编辑…
选择“默认情况下,对所有计算机拒绝访问”。
在iis7配置设置中禁用上述目录的访问的方法

打开配置工具:开始 → 设置 → 控制面板 → 管理员工具 → IIS 服务
浏览到你想要保护的目录:本地计算机 → 网站 → 默认网站 →右边功能视图中找到iis里的请求筛选
在URL里添加.你需要保护的目录..更简单的办法就是在dokuwiki的根目录下.找到web.config文件,如果没有就创建一个,打开改为以下代码:web.config

将目录移出根文档
为了避免任何对上述目录的访问,最安全的方法就是把它们从 Web 服务所谓的“根文档”中移出来。

简单方法备忘:1、建立一个新文件夹:newname
2、把data文件夹全部移到newname文件夹内。
3、添加以下这一行到 “conf/local.php”:

$conf[‘savedir’] = ‘newname/data/’;


从根文档中移出 “data” 目录(和它所有的内容)
编辑 savedir 设置,使它指向 “data” 目录的新位置。
例如,如果把 “data” 目录移动到 “/home/yourname/data”,添加以下这一行到 “conf/local.php”:

$conf[‘savedir’] = ‘/home/yourname/data/’;


从根文档中移出 “conf” 目录(和它所有的内容)
在 “inc” 目录内创建一个名为 preload.php 的文件,设置 “DOKU_CONF” 定义并使它指向 “conf” 目录的新地址。
例如,如果把 “conf” 目录移动到 “/home/yourname/conf”,创建以下的 “inc/preload.php”文件:

inc/preload.php
<?php

define(‘DOKU_CONF’,’/home/yourname/conf/’);


bin 目录
bin 目录包含了命令行工具。如果你没有 shell 可以访问你的服务器,你可以简单的删除该目录和它的内容。否则只要把它移出文档根即可。不需要更多的配置工作。

inc 目录
从文档根中移出该目录,直到目前还没有简单的方法。但是因为它不包含任何的敏感数据,所以不值得努力尝试移出它了。

DokuWiki 配置设置
DokuWiki 包含了多个配置设置,对安装的各个安全方面产生影响。请参阅每个设置文档,以了解它们能做什么以及建议的设置。

allowdebug – 禁止调试输出,以避免系统信息泄露 ❗
fmode, dmode – 设置 DokuWiki 创建文件的文件权限,也可以看到关于建立权限的信息。
fetchsize – 配置外部数据缓存
fullpath – 显示页面的完整路径名
所有的 验证设置
usewordblock – 通过黑名单,防止垃圾邮件
mailguard – 避免收集邮件地址的机器人
iexssprotect – 在 IE 中防范跨站脚本问题
htmlok – 开启 HTML
phpok – 开启 PHP
hidepages – 在索引和搜索中隐藏特定页面
safemodehack – 解决安全模式的限制


插件安全
DokuWiki 拥有大量的社群贡献的插件。插件通过添加新的代码为 DokuWiki 提供新的功能。这意味着该代码实际上已经访问到你的服务器。此外在一个完全特设的方式下,插件与 DokuWiki 是分开发布的。它们不像 DokuWiki 的核心代码库那样得到同样的关注和审查。所以,在安装一个插件之前的安全措施是有必要的。

这里有一些提示,帮助你选择你想要安装的插件。

如果可以,在安装插件之前,你应该检阅一下插件的源代码。
如果有疑问,请在邮件列表提问。
插件安装在 DokuWiki 的 lib 目录下,它可以从外部直接访问。检查一下该插件包含哪些文件,并使用适当的 .htaccess 文件锁定对它们的访问。
插件的创作与开发与 DokuWiki 项目没有直接的关系 – 他们可能是经验不足,有恶意或可能是已经被入侵的服务器插件的源代码。小心选择你信任的插件!
回顾上述的安全警告,同时,当插件有可用的新版本时为插件进行升级。

附加阅读
这里有一些更多关于安全方面的内部和外部网页。

设置访问控制,通过 Https 强行登陆,对 DokuWiki 的 php 设置,Remove ACL rules for deleted pages
Apache 安全 – 第三章:PHP的锁定.

https://www.dokuwiki.org/zh:security (2026-2-3 14:42:18)

3.新增页面,前提:Add New Page Plugin插件已安装完成

2026年1月24日14:30:18