在dokuwiki上面装了一个addnewpage 插件,但是不能工作

修改插件的syntax.php文件(位于dokuwikiroot\lib\plugins\addnewpage下),在render函数中加入蓝色部分代码:
$form = '<div class="addnewpage">' . DOKU_LF
. DOKU_TAB . '<form name="addnewpage" method="get" action="' . DOKU_BASE . DOKU_SCRIPT . '" accept-charset="' . $lang['encoding'] . '">' . DOKU_LF
. DOKU_TAB . DOKU_TAB . $namespaceinput . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input class="edit" type="text" name="title" size="20" maxlength="255" tabindex="2" />' . DOKU_LF
. $newpagetemplateinput
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="do" value="edit" />' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="id" />' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input class="button" type="button" value="' . $this->getLang('okbutton') . '" tabindex="4" onclick="addnewpage2.id.value=addnewpage.np_cat.value==\'\'?addnewpage.title.value:addnewpage.np_cat.value+\':\'+addnewpage.title.value;addnewpage2.submit()"/>' . DOKU_LF
. DOKU_TAB . '</form>' . DOKU_LF
. DOKU_TAB . '<form name="addnewpage2" method="get" action="' . DOKU_BASE . DOKU_SCRIPT . '" accept-charset="' . $lang['encoding'] . '">' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="do" value="edit" />' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="id" />' . DOKU_LF
. DOKU_TAB . '</form>' . DOKU_LF
. '</div>';

重新测试创建页面,ok

linux下dokuwiki:安装与配置

php的开源wiki主要有:

mediawiki:php

dokuwiki:php

############################################################

安装apache2和php:

sudo apt-get install apache2 libapache2-mod-php5
参考apache的配置。

安装dokuwiki:

sudo a2enmod rewrite
sudo cp –a doku… /var/www/
cd /var/www
tar zxvf doku… -C dokuwiki
chown -R www-data:www-data /var/www/dokuwiki

修改路径:

sudo vi /etc/apache2/sites-enabled/000*.conf

DocumentRoot/var/www/html → DocumentRoot /var/www/dokuwiki

修改权限:

sudo vi /etc/apache2/apache2.conf
: Allow Override None → AllowOverride All

重启apache2:

sudo service apache2 restart

在web安装:

http://IP-address-of-your-server/install.php toinitially configure your DokuWiki.

安装完成后删除:

sudo rm /var/www/dokuwiki/install.php

安全设置:

data conf bin inc 这四个目录是不能通过web(http和https)访问的。

在/etc/apache2/apache2.conf或/usr/local/conf/httpd.conf添加下面配置:

#允许访问/var/www/dokuwiki/目录

order deny,allow

allow from all

#禁制访问/var/www/dokuwiki/(data|conf|bin|inc)/目录

<locationmatch "="" (data|conf|bin|inc)="">

order allow,deny

deny from all

satisfy all

############################################################

doku的配置:

doku的配置文件在/var/www/dokuwiki/conf/

主文件通常由dokuwiki管理,局部文件由管理员创建。

也就是我们需要创建并修改局部的local文件来配置。

dokuwiki.php:主配置文件

local.php:局部文件

local.protected.php:保护不受更改

plugins.php:默认插件

plugins.local.php:插件管理员修改

plugins.required.php:核心插件

plugins.protected.php:覆盖设置

user.auth.php:用户账号密码

acl.auth.php:访问控制规则

mediameta.php:可编辑的元数据

license.php:可用的许可证

mime.conf:上传文件的规则

acronyms.conf:自动缩进提示

smileys.conf:图像补充

entities.conf:文本补充

interwiki.conf:快捷方式

scheme.conf:url方案

wordblock.conf:垃圾邮件列表

############################################################

dokuwiki的插件和模板管理:

手动安装就是下载解压到下面路径然后chown为www-data:

/var/www/dokuwiki/lib/tpl用来安装模板

/var/www/dokuwiki/lib/plugins用来安装插件

自动安装就是在dokuwiki的web页面的模板管理安装。

centos6.5系统下dokuwiki安装过程

前期准备:yum 安装httpd和mysql

1.下载罪行dokuwiki安装包 http://download.dokuwiki.org/;

2.centos系统中httpd的根目录为:/var/www/html (摸索了很长时间,非常重要的信息),将安装包解压到该目录(默认文件夹名为dokuwiki);

3.设置权限,chown -R apache:apache dokuwiki (权限组名apache的信息比较重要,试错了好几次);

4.在浏览器中输入:local_IP/dokuwiki (注意:服务器上最好设置静态路由,该步奏网上信息较多,略)

5.安全设置,将data、conf文件夹移除,按该网址提示:https://www.dokuwiki.org/zh:security

遇到的问题:

1.其他笔记本初次登录local_IP/dokuwiki显示无连接(电脑重启之后也需进行同样的操作)

解决步奏

首先,ping IP 通;其次,telnet IP 80,不通;

原因出自防火墙将80端口屏蔽。

解决办法

/sbin/iptables -I INPUT -p tcp –dport 80 -j ACCEPT

/etc/rc.d/init.d/iptables save

/etc/init.d/iptables restart

进阶:

1.设置模板,将现在的包(模板地址:https://www.dokuwiki.org/zh:template#lightbox/3/)解压到/lib/tpl,然后就可以在设置中选择自己想要的模板了。

2.注册新用户,无需将密码通过邮箱发送。在设置选项中将自动产生密码的一项的钩去掉。

3.阅读语法:https://www.dokuwiki.org/zh-tw:syntax,了解文本编辑技巧。

语法:

dokuwiki的编辑

在实践中遇到问题、解决问题

dokuwiki安装与配置教程

PS:越来越发现博客不适合做知识库了,因为文章之间太分散,条理也不清晰。明显没有wiki那么清楚明了,wiki就和思维导图一样,看着那些结构层次命令的,就能回忆个大概,所以搭建了这个wiki知识库,供个人使用,以后可能会考虑开放吧。又要学习一遍wiki的语法了。

dokuwiki安装与配置
1.下载dokuwiki网站源码
#wget -c  http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz

2.解压源码安装
#tar -zvxf dokuwiki-stable.tgz    //解包解压缩
#cd dokuwiki-2013-05-10a   //进入解压后的目录
#cp -R * /home/www   //复制解压的网站源码文件到网站根目录

在浏览器输入:http://域名或者ip/install.php

xxx is not writable by DokuWiki. You need to fix the permission settings of this directory!

The installer found some problems, indicated below. You can not continue until you have fixed them.

{DOCUMENT_ROOT}/data/pages is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/attic is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/media is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/media_attic is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/media_meta is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/meta is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/cache is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/locks is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/index is not writable by DokuWiki. You need to fix the permission settings of this directory!
{DOCUMENT_ROOT}/data/tmp is not writable by DokuWiki. You need to fix the permission settings of this directory!

 

这是因为文件和文件夹权限问题,修改权限就可以了:
#chown -R www:www /home/www   //将文件所有者由root用户改为www用户(你nginx运行的用户)

先在右上角选好语言,简体中文zh
填写好网站的名称,管理员等,协议等

安装完后,为了安全,要删除install.php文件,然后再用刚才设置的用户名密码登陆

关于安全:

http://你的域名或者ip/data/pages/wiki/dokuwiki.txt

如果你能通过上面这个链接,访问到dokuwiki.txt文件,那么表明你的网站的数据是不安全,因为dokuwiki是文本数据库,也就是别人可以直接拖库了。

官方要求是

  • data
  • conf
  • bin
  • inc

这四个目录是不能通过web访问浏览的,所以,我们要设置这些目录的权限,保证网站的数据安全。

解决办法:因为这个根据你的web服务器的不同而设置访问权限的方式也不同,所以,我下面会贴出大部分web 服务器的设置方法。

  • nginx

我的就是nginx,在网站的nginx.conf配置文件的server段加上下面的代码:

location ~ /(data|conf|bin|inc)/

{

deny all;

}

或者通过.htaccess文件禁止访问:

location ~ /\.ht {

deny all;

}

  • Apache

用.htaccess文件来禁止,格式如下:

order allow,deny

deny from all

注意:官方说apache2的.htaccess文件在ubuntu上失效,所以,方法特别,需要进入/etc/apache2/sites-available,修改default文件(如果你是用的 https,这是修改default-ssl )

NameVirtualHost *
<VirtualHost *>
ServerAdmin admin@site.com

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride none
Order allow,deny
allow from all
</Directory>

将其中的 AllowOverride none 改为  AllowOverride all ,然后重启apache服务器

或者直接在VirtualHost文件里,用LocationMatch ,代码如下:

<LocationMatch “/(data|conf|bin|inc)/”>
Order allow,deny
Deny from all
Satisfy All
</LocationMatch>

但是,可能会导致比如你的另外一个网站跟目下也有data,conf这类目录也不能访问,方法如下,扩展下

locationmatch:
<Directory /var/www/dokuwiki>
order deny,allow
allow from all
</Directory>

<LocationMatch “/dokuwiki/(data|conf|bin|inc)/”>
order allow,deny
deny from all
satisfy all
</LocationMatch>

  • IIS

进入刚才所提到的目录,进行如下设定:

  1. 打开配置工具: 开始 → 设置 → 控制面板 → 管理工具 → Internet信息服务
  2. 进入到你要保护的目录: 本地计算机 → 网站 → 默认web站点→ 目录路径
  3. 右击文件夹并选中属性 →目录安全 → IP address and domain name restrictions (ip地址和域名限制)→ Edit(编辑)…
  4. 选择“默认情况下,所有计算机:禁止访问”

在IIS7:

  1. select “IIS Request Filtering”
  2. go to the “URL” tab
  3. click on “Deny Sequence”
  4. enter ”/data/” in the popup box

Repeat for ”/data/media” and choose “Always Allow” (otherwise your images and other won’t be visible)

Note: By default, the Management Console snap-in for Internet Information Services 7 does not have UI access to “IIS Request Filtering” section. However, can be enabled by installing “IIS Administration pack 1.0” by using the Web Platform Installer.

Also note: Ensure you enter ”/data/” and NOT just ”/data”, otherwise pages that start with “data” will be inaccessible.

  • Lighttpd

Using a URL re-write you can deny access to the above directories. In your lighttpd.conf file adding the following URL rewrite rule should be sufficient to keep people out. It suppose your Dokuwiki files are installed under http://yourwebsite.tld/dokuwiki/. Don’t forget to uncomment “mod_rewrite” in the server.modules section.

url.rewrite-once = ( “^/dokuwiki/(data|conf|bin|inc)/+.*” => “/nonexistentfolder” )

Or use “mod_access”. More examples available here.

 

<blockquote>$HTTP[“url”] =~ “^/dokuwiki/(data|conf|bin|inc)/+.*” {
url.access-deny = (“”)}

  • Cherokee(据说比nginx还快的web 服务器,大家可以去试试.但貌似不如nginx稳定)

It is relatively easy to forbid access to those directories using Cherokee. In cherokee-admin, select the virtual server where dokuwiki is installed and select rules management.

then add a new “Regular Expression” rule and put the following in it :

/(data|conf|bin|inc)/

Then go in “Handler” section and select HTTP Error. Finally select “403 Forbidden” in HTTP Error.

TMD,其他的重命名,迁移data目录什么的,懒得翻译了,贴上官方的文档地址:https://www.dokuwiki.org/security#web_access_security       自己有疑问就去看吧,不懂google翻译去。

 

dokuwiki简介+windows安装+杂技

DokuWiki是一款简洁轻便,代码整洁,功能强大而灵活的开源Wiki程序。尤其适用于中小团队和个人网站知识库的管理。可以预见,在声名鹊起的web2.0风潮中,DokuWiki必将更会广泛应用。

主要内容:
一、下载与简介
二、实践与技巧
三、杂乱的资料

一、下载与简介
==========
是一个知识管理工具。wiki的。
下载地址是:
http://www.splitbrain.org/blog/2008-05/16-dokuwiki_on_a_stick_2008-05-05
(这个版本的比较简单,后面就是用的这个)
官方:
http://www.splitbrain.org/projects/dokuwiki

二、实践与技巧
==========
我在windows上面的使用过程:
*安装:
1)在http://www.splitbrain.org/blog/2008-05/16-dokuwiki_on_a_stick_2008-05-05下载
2)解压,看README
3)根据README进行如下过程:
3.1)运行mapache.exe
这样弹出一个dos窗口,不要关闭它。
3.2)在浏览器上面敲入如下网址:http://localhost:8800/
之后自己慢慢学习。
3.3)想要退出就运行stop.exe.

*创建一个新的页面:
方法1)想要创建一个新的不存在的页面,要先访问它,提示不存在才能创建。例如:http://localhost:8800/playground/new 提示没有这个页面然后创建它。也可以创建目录,再创建页面,只需事先访问它。

方法2)在搜索框里面搜索 :playground:bad:new 这个不存在的页面,然后在结果中点创建该页面,就可以创建那个相应目录下面的页面了。目录用unix目录结构表示,是/playground/bad/new 。这里貌似直接使用/playground/bad/new进行搜索也行,或者使用bad/new会自动定位到相应的地方的。
如果再搜索playground/bad/new/haha并且创建,也不会覆盖原来的new,而是另外又新建立一个new目录。

方法3)手动在dokuwiki\data\pages目录下面创建相应的目录或者文件,然后dokuwiki会自动地将它们映射成页面和namespaces的。

)使用pagemove插件可以移动和创建.注意目录要使用类似linux的绝对路径

*删除一个页面
保存一个空的页面,那么这个页面会自动删除,如果一个目录下面没有页面了,那么这个目录也被删除。
似乎手动在dokuwiki\data\pages创建一个新的目录不会被删。

三、杂乱的资料
============
下面是杂乱的学习资料:
start主页
Welcome to your DokuWiki on a Stick
This is a DokuWiki install combined with a minimal Apache server preconfigured to run from an USB stick. The Apache/PHP setup is based on the MicroApache project.
This install comes with a precreated superuser. Login with admin/admin to access the DokuWiki administration backend. Be sure to change the password!
If you want to save some space on your stick you can delete languages you don’t need from dokuwiki/inc/lang/ and dokuwiki/lib/plugins/*/lang/.
Have fun!
以上的主要内容是:
DokuWiki安装的时候,可以从USB盘上面启动,需要的配置Apache非常之少。
安装的时候,预先创建了一个超级用户,使用admin/admin来进入DokuWiki管理后台。请记住要修改这个密码!
如果你想要节省一些空间,那么你可删除dokuwiki/inc/lang/和dokuwiki/lib/plugins/*/下面的你不需要的东西。

*如何添加一个新的条目或者目录分类?
尝试了一下,在
D:\Program Files\DokuWikiStick\dokuwiki\data\pages
添加目录或者文件可以显示出来,但是不知道这样是不是正规的途径。

*如何备份DokuWiki?
http://www.dokuwiki.org/zh:faq:backup?s[]=backup
由于 DokuWiki 不使用数据库,备份是很简单的。您需要做的就是拷贝所有的文件。最简单的方法就是备份您的整个 DokuWiki 目录。
如果您想要节约一些空间,您至少需要备份下列目录:
data/pages
data/meta
data/media
conf

常用的插件:
http://sinosmond.com/guide/dokuwiki/dokuwiki_plugin#常用的插件
http://www.dokuwiki.org/plugins

一些技巧
http://www.ichiayi.com/wiki/tech/dokuwiki_tips

linux下面dokuwiki安装

官方网址:
http://www.dokuwiki.org/dokuwiki
在线文档:
http://www.dokuwiki.org/
一个图形化的安装过程:
http://www.dokuwiki.org/install:screencast
下载网址:
http://www.splitbrain.org/projects/dokuwiki

安装过程:
比较好的参考网址:
http://www.dokuwiki.org/install
http://sinosmond.com/guide/dokuwiki/dokuwiki_install

最简过程:
1)下载最新dokuwiki
下载网址:
http://www.splitbrain.org/projects/dokuwiki
这里我下载的是:
dokuwiki-2009-12-25c.tgz

2)解压文件dokuwiki-2009-12-25c.tgz:
$tar -xzvf dokuwiki-2009-12-25c.tgz

3)配置安装环境:
3.1)sudo apt-get install apache2 apache2-mpm-prefork
3.2)sudo apt-get install php5 php-pear php5-cli php5-gd php5-imap php5-common
这里,应该就可以访问dokuwiki了。
如果安装之后不好使,就重启一下apache:/etc/init.d/apache2 restart,如果还是不好使,就再安装下面两个:
$ sudo apt-get install php5-mcrypt php5-mhash php5-syck php5-xmlrpc php5-xsl
$ sudo apt-get install libapache2-mod-php5

4)拷贝dokuwiki-2009-12-25c目录里面的内容到web地址空间:
$sudo cp dokuwiki-2009-12-25c /var/www
这里,/var/www下面只有一个index.html如果在你的浏览器中敲入你的ip地址,会自动打开这个页面。/var/www是apache2的默认web地址空间,这个地址在/etc/apache2/sites-available/default里面应该有所指定,更多的配置需要了解apache配置相关的知识这里不多说了。在拷贝之前,删除这个index.html。

5)初始配置dokuwiki:
在浏览器输入:http://<你的ip地址>/install
这里,注意,我曾经输入过”http://<你的ip地址>/install.php”总是提示保存php文件,怎么走不通后来输入了http://<你的ip地址>/install就好了。
注意,这里刚开始不要直接输入”http://<你的ip地址>”,因为这样不会自动进入install的安装界面,而是进入dokuwiki的最简界面,之后如果再想安装可能就会提示已经有了某某文件无法继续了,为了出现这个情况,最好第一次就运行
http://<你的ip地址>/install.

页面生命周期

1、创建

DokuWiki中,最简单的创建页面方法是,通过已存在的页面创建一个新页面。在地址栏输入新名称然后点击创建。

首先,在页面输入

 

然后点击创建

 

这种最简单的方法可以保证新建页面与其他页面互相关联。

如果采用其他方法,请保证新页面可以链接到其他页面。不然新建页面就会成为单独页面,在以后查询的时候非常麻烦。

2、编辑

点击编辑页面就开始编辑,可以点击预览查看目前的页面效果。编辑完成后点击保存即可。默认保存页面为html格式,输出时可以选择其他格式

输出需要格外加载插件,链接:

https://www.dokuwiki.org/plugins?plugintag=export#extension__table

3、删除页面

删除页面,清空页面内容并保存即可。

基本页面用法:

页面是DokuWiki的基本属性,第一个header一般就是页面的title。页面最常用的功能有链接和图片。

标题:

====显示标题,下面的例子中显示的不太对,是等于号。等于号的数量解决的字体大小。

=== 三级标题===

=== 四级标题 ===

== 五级标题 ==

页面由标题区分section

链接:

 

编辑栏有链接选项。

 

图片:

在文本中加入图片,用{{}},在括号中间加入图片地址

示例格式:

{{wiki:dokuwiki-128.png}}

{{wiki:text2html.rc}}

更多功能:

需要更多功能可以加载插件

地址 https://www.dokuwiki.org/plugins

dokuwiki介绍及window安装

安装DokuWiki服务器的要求

  • 具有PHP 支持的Web 服务器
  • 首选Apache
  • 对PHP的要求
  • 基于某些安全考虑强烈建议使用PHP 4.3.10及其以上的版本
  • 使用libGD2 的PHP’s GD 扩展 — 可选项
  • 建议运行于PHP的 Safe Mode
  • 建议运行于PHP的 register_globals=off 模式.

DokuWiki 的目录结构

dokuwiki
|-- bin
|-- conf                        ---  存放配置文件
|   |-- acl.auth.php.dist         --- acl.auth.php(ACL 控制配置文件)的默认发布 *
|   |-- acronyms.conf             --- 用于定义首字母缩写词,以便当鼠标移动到这些词时显示解释信息
|   |-- dokuwiki.php              --- DokuWiki 的主配置文件 *
|   |-- entities.conf             --- 用于定义实体字符 **
|   |-- interwiki.conf            --- 用于定义 interwiki,以便使用简单的方式书写 URL **
|   |-- local.php.dist            --- local.php(本地配置文件)的默认发布 *
|   |-- mediameta.php             --- 定义用于 media manager 的 meta data 配置 *
|   |-- mime.conf                 --- 定义 mimetypes 的配置文件 *
|   |-- msg                       --- 一个标志文件,用于判断当前版本是否为最新 *
|   |-- mysql.conf.php.example    --- mysql.conf.php(mysql 用户认证的配置文件)的默认发布 *
|   |-- smileys.conf              --- 用于定义“笑脸”的配置文件 *
|   |-- users.auth.php.dist       --- users.auth.php(文本用户认证的配置文件)的默认发布 *
|   |-- wordblock.conf            --- 用于配置不允许书写的 URL **
|   `-- words.aspell.dist         --- words.aspell(拼写检查配置文件)的默认发布 *
|-- data                        ---  存放文档数据
|   |-- attic                     ---  存放版本信息
|   |-- cache                     ---  数据缓存
|   |-- index                     ---  存放内部索引
|   |-- locks                     ---  用于存放编辑页面时的锁定文件
|   |-- media                     ---  存放图片等
|   |-- meta                      ---  存放 meta 以便系统读取这些信息生成页面
|   |-- pages                     ---  存放 wiki 页面
|   `-- tmp                       ---  临时目录
|-- inc                         ---  DokuWiki 的 Include 目录
|   |-- auth                      --- 存放不同方式的用户认证脚本
|   |-- geshi                     --- 使用 geshi 进行代码加亮显示
|   |-- lang                      --- 多语言支持
|   |   |-- en
|   |   |-- fr
|   |   |-- zh
|   |   `-- zh-tw
|   `-- parser                    --- DokuWiki 的核心解析器
`-- lib
    |-- exe
    |-- images
    |-- plugins                   ---  存放插件的目录
    |   |-- acl
    |   |-- config
    |   |-- importoldchangelog
    |   |-- info
    |   |-- plugin
    |   `-- usermanager
    |-- scripts
    |-- styles
    `-- tpl                       ---  存放模版的目录
        `-- default

DokuWiki安装在Windows

在Windows环境下要运行Dokuwki,你可以:

  • 直接下载 Apache、PHP,安装之后配置 Apache+PHP

安装步骤

  • 配置支持PHP的Web服务器
  • 下载 最新版的DokuWiki
  • 将下载文件dokuwiki-YYYY-MM-DD.tgz 解压
  • 复制内容到Web文档根目录

小贴士:

若你希望以http://wiki.mytest.net 域名访问WIKI站,将dokuwiki-YYYY-MM-DD 目录里的内容复制到Web文档根目录

若您希望以http://mytest.net/dokuwiki 域名访问WIKI站,首先将dokuwiki-YYYY-MM-DD 目录改名为dokuwiki,然后将dokuwiki目录复制到Web文档根目录

Dokuwiki安装

Dokuwiki的安装是很简单的,无需修改任何文件,只需要解压缩然后填入一些基本信息就可以了。当然,这在很大程度上和它不需要数据库有关。想想如果要MySQL,那要增加多少步骤。

下载

在官方网站下载最新的稳定版:http://www.splitbrain.org/projects/dokuwiki ,然后解压缩到你的网站目录下,比如/var/www/dokuwiki。

修改权限

修改权限以使Web服务器对文件有相应的读写权限。

  • 对于Linux系统,假设Web服务器的用户和组是www-data,那么执行
sudo chown www-data:www-data -R /var/www/dokuwiki
  • 如果是Windows的系统,可以右键打开文件夹的属性,找到“权限”选项卡,然后对Web服务器的用户组赋予相应权限。(这是XP的操作。VIsta和Win7没用过,不知道改没改)

安装

现在在浏览器中输入地址,比如http://localhost/dokuwiki ,应该可以看到Dokuwiki的界面了。如果出现错误,一般是权限有问题。不过这并不是装好了,你还没有自己的账户,也不能进行任何配置。

要真正完成安装,在浏览器中输入,比如http://localhost/dokuwiki/install.php ,这会打开安装页面。先在右上角的“Choose your language”后面的下拉列表中选择“zh”,将页面变成中文。

现在开始安装配置:

  • 维基名称:你wiki的名字,比如我的是Lainme’s Blog
  • 启用ACL(推荐):即启用权限控制,这个保持默认(选中状态)
  • 超级用户:输入超级用户的用户名
  • 全名:超级用户的全名,和上一个一样就行
  • E-Mail:超级用户的电子邮件地址
  • 密码:超级用户的密码
  • 请再输一次:再次输入密码
  • 初始的ACL政策:全局权限控制策略,在下拉列表中选择一个合适的
    • 开放的维基(任何人都有读、写、上传的权限)
    • 公开的维基(任何人都有读的权限,只有注册用户才有写和上传的权限)
    • 关闭的维基(只有注册用户才有读、写、上传的权限)

填写完成后按“保存”完成安装。现在再次进入http://localhost/dokuwiki ,可以在右下角看到有个“登录”按钮,同时标题栏也变成了你设定的网站名称。

为了安全,最好删除目录下的install.php文件。虽然Dokuwiki自身也有保护,install.php已经不能再次运行,不过还是以防万一吧。

DokuWiki格式语法说明

DokuWiki 支持一些简单的标记语言, 以尽最大可能使文档看上去更友好。本页面包含了所有你在编辑页面时可能用到的语法的说明。如果需要查看本页源码,只需要点击页面顶部或者底部的 编辑本页 按钮即可。
如果您是初尝Wiki,那么可以使用 Wiki砂箱 来尽情挥洒。
通过快捷按钮,您可以更方便地使用这些标记。

基本文本格式

DokuWiki支持 粗体斜体下划线 以及 等宽体 等格式。当然,您也可以 混合使用 所有这些格式。

DokuWiki支持 **粗体**, //斜体//, __下划线__ and ''等宽体'' 等格式。
当然,您也可以 **__//''混合使用''//__** 所有这些格式。

可以使用 下标上标

可以使用 <sub>下标</sub> 和 <sup>上标</sup>。

您也可以使用 删除线 标记某些信息。

您也可以使用 <del>删除线</del> 标记某些信息。

段落 是由空行所建立的。如果您想 强制建立新行 而不建立段落,您可以使用两个连续的反斜杠+空格或是回车作为标记。请看样例:

这是一些有着换行标记的文字。
请注意 反斜杠只在回车符之前
或者在
一个空格之前的时候才有效。 \\而这样就并不起作用。

这是一些有着换行标记的文字。\\ 请注意
反斜杠只在回车符之前\\
或者在\\ 一个空格之前的时候才有效。 \\而这样就并不起作用。

请只在必须的时候才使用强制的换行标记。

链接

DokuWiki支持多种形式的链接。

外部链接

外部链接会被自动地识别: http://www.google.com 或者简单地写作 www.google.com – 当然您也可以为链接设置名字: 链接到google. 类似这样的电子邮件地址: andi@splitbrain.org 也可以被识别。

DokuWiki支持多种形式的链接。外部链接会被自动地识别:
http://www.google.com 或者简单地写作 www.google.com
- 当然您也可以为链接设置名字: [[http://www.google.com|链接到google]]。
类似这样的电子邮件地址: <andi@splitbrain.org> 也可以被识别。
内部链接

内部链接可以用方括号创建。您可以只给出链接的地址:wiki:pagename,也可以附加上链接的名字:我的链接。Wiki的页面名字将会被自动地识别为小写字母,并且不允许使用特殊字符。

内部链接可以用方括号创建。您可以只给出链接的地址:[[pagename]],
也可以附加上链接的名字:[[pagename|我的链接]]。
Wiki的页面名字将会被自动地识别为小写字母,并且不允许使用特殊字符。

您可以通过在页面名中使用冒号的方式来使用 命名空间

您可以通过在页面名中使用冒号的方式来使用 [[wiki:namespaces|命名空间]]。

如果您需要关于命名空间(namespaces)的更详细的信息,请参见 wiki:namespaces

您也可以链接到一个网页内部的某一节,只需要将该节书签的名称以一个#号分隔加在网页的地址后面即可。这是一个连向 本节 的链接。

这是一个连向 [[syntax#internal|本节]] 的链接。

注:

  • 已存在页面 的链接和到 未存在页面 的链接,其外观是不同的。
  • 默认情况下,DokuWiki不使用 CamelCase 来自动建立链接,(CamelCase类似于PmWiki中的WikiWord)。但是也可以在 设置文件 中启用它。 Hint: If DokuWiki is a link, then it’s enabled.
  • 当一节的标题改变时,该节的书签也会改变,因此,请不要太依靠网页内的链接。
Wiki间链接

DokuWiki支持 Wiki间链接 ,即到其他wiki的链接。例如,这是一个到Wikipedia上关于Wiki的一个页面的的链接: Wiki

DokuWiki支持 [[interwiki|Wiki间链接]] ,即到其他wiki的链接。
例如,这是一个到Wikipedia上关于Wiki的一个页面的的链接: [[wp>Wiki]]
Windows共享文件夹

Windows共享文件夹,例如 this 也可以被识别。请注意,这只在内部 局域网 等环境中才可能被成功访问。

Windows共享文件夹,例如 [[\\server\share|this]] 也可以被识别。

注:

  • 出于安全原因,只有在微软IE浏览器上才能够直接访问Windows共享文件夹。
图像链接

您也可以用图像来作为一个内部或者外部的链接,只需同时使用链接和图像的语法,如下所示:

[[http://www.php.net|{{wiki:dokuwiki-128.png}}]]

请注意:在链接名中使用语法,只有显示图像的语法会被识别,请不要使用其它语法。

脚注

您可以使用两个连续小括号来添加脚注1)

您可以使用两个连续小括号来添加脚注((看这里,这是一个脚注))。

标题段落

您可以使用最多达5层的标题来使您的页面更富结构性。如果您使用了三个以上的标题,那么DokuWiki会自动在页面上生成一个名为“本页目录”的标题列表。当然,您也可以关闭这项特性,只需在编辑时在页面里加入 ~~NOTOC~~ 字样即可。

H3标题
H4标题
H5标题
==== H3标题 ====
=== H4标题 ===
== H5标题 ==

您可以通过连续的4个以上“-”号来创建一条水平分割线:


图像和其它文件

您可以使用双大括号来在页面中加入 图像 。您还可以选择是否指定图像的显示大小。

原始大小:

指定宽度:

指定宽度和高度:

重新指定宽度和高度的外部图像:

原始大小:                        {{wiki:dokuwiki-128.png}}
指定宽度:                        {{wiki:dokuwiki-128.png?50}}
指定宽度和高度:                  {{wiki:dokuwiki-128.png?200*50}}
重新指定宽度和高度的外部图像:    {{http://de3.php.net/images/php.gif?200x50}}

使用左方或者右方的空格,您可以选择对齐方式:

{{ wiki:dokuwiki-128.png}}
{{wiki:dokuwiki-128.png }}
{{ wiki:dokuwiki-128.png }}

当然,您也可以指定一个图像的名字,将鼠标移到图像上可以看到效果。

这是图像的名字

{{ wiki:dokuwiki-128.png |这是图像的名字}}

如果您指定的文件名(无论是外部的还是内部的)不是一个图像(gif,jpeg,png),那么它将被显示为一个链接。

列表

Dokuwiki支持带编号或不带编号的列表。要使用列表,在文字前加入两个空格,然后使用*标志不带编号的列表,用-标志带编号的列表。

  • 列表
  • 第二项
    • 下一层
  • 第三项
  1. 带编号的列表
  2. 第二项
    1. 用缩进表示更深的层
  3. 完了
  * 列表
  * 第二项
    * 下一层
  * 第三项

  - 带编号的列表
  - 第二项
    - 用缩进表示更深的层
  - 完了

表情符号

DokuWiki会将一些常用的 表情符号 转换为图像。除了默认的表情符号以外,您也可以在 smiley 文件夹中放入更多的表情图,然后在 conf/smileys.conf 中设置它们即可。下面是Dokuwiki包含了的表情图像:

  • 8-) 😎
  • 8-O 😯
  • :-( 🙁
  • :-) 🙂
  • =) =)
  • :-/ :-/
  • :-\ :-\
  • :-? 😕
  • :-D 😀
  • :-P 😛
  • :-O :-O
  • :-X :-X
  • :-| 😐
  • ;-) 😉
  • ^_^ ^_^
  • :?:
  • :!:
  • LOL LOL
  • FIXME FIXME
  • DELETEME DELETEME

印刷样式

DokuWiki可以将特定字符转换为印刷时所用的样式。下面是可以识别的这类字符的列表:

→ ← ↔ ⇒ ⇐ ⇔ » « – — 640×480 © ™ ® “He thought ‘It’s a man’s world’…”

-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r)
"He thought 'It's a man's world'..."

请注意:在配置文件中可以禁用这类自动转换。

表格

DokuWiki可以用简单的语法创建表格。

标题1
标题2
标题3

(1,1)
(1,2)
(1,3)

(2,1)
展宽的单元格

(3,1)
(3,2)
(3,3)

表格的每一行都以分隔符 | (普通行)或者 ^ (标题行)作为开头和结束。

^ 标题1        ^ 标题2         ^ 标题3       ^
| (1,1)        | (1,2)         | (1,3)       |
| (2,1)        | 展宽的单元格               ||
| (3,1)        | (3,2)         | (3,3)       |

要水平合并单元格,只需要将后一个单元格设置为空即可,如上面演示的一样。请确保每一行有相同数量的单元格分隔符!

竖直的标题列也是可以实现的:

标题1
标题2

标题3
(1,2)
(1,3)

标题4
不再合并单元格

标题5
(2,2)
(2,3)

可以看到,单元格前面的分隔符决定了单元格的格式。

|          ^ 标题1          ^ 标题2          ^
^ 标题3    | (1,2)          | (1,3)          |
^ 标题4    | 不再合并单元格 |                |
^ 标题5    | (2,2)          | (2,3)          |

注:垂直合并单元格尚未实现。

您可以对齐表格的文字。只需要添加多余两个的空格在您需要对齐的方向的反向即可:如果需要右对齐,在左边添加两个空格;反之,则在右边添加。在两边均添加空格可以实现中间对齐。

有对齐的表格

右对齐
居中
左对齐

左对齐
右对齐
居中

xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx

下面是源文件中的格式:

^           有对齐的表格                   ^^^
|        右对齐|     居中     |左对齐        |
|左对齐        |        右对齐|     居中     |
| xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx |

无格式区块

在一段文字的最前面加上 2 个空白,来直接作为「文本框」不对它做加工处理(就像前面那些说明一样)。或者也可以用 <code><file> 这两个标签(tag)都可以达到类似效果。

这段是用 <code> 产生的,所有空格及所有原始格式都会照样显示,还其本色。
 就像       <-这个

或者
    方与圆  似刚与柔
    圆契合于方
    方契合于圆
    两心同一点
这段跟上段很像,但是改用 <file> ,可以把它用在「引述名言(Quote)」效果上。  
  
        remember, information is not knowledge,
                  knowledge is not wisdom
                  wisdom is not truth
                  truth is not beauty
                  beauty is not love
                  love is not music
                  music is the best
  
                                                -- frank zappa

若要略过某段内含 WIKI 语法,不对该段文字作任何处理, 可以使用 <nowiki> 标签或更简单一点用 2 个 %% 放在该段文字的前后,请参考下面例子:

<nowiki>这段字不要用 [[WIKI]] 语法</nowiki> 或是%%这段字不要用 [[WIKI]] 语法%%

这一段包含一些原本会在 WIKI 内有特殊处理,像是 http://www.splitbrain.org 及 **强调语气的文字** ,但是正如所看到的,这里什么都不做任何处理。

您可以看本页的原始写法来察看这一段是怎么写的。

语法的高亮度显示

DokuWiki 可把原始码语法来做高亮度显示(Syntax Highlighting),来更加具可读性。 它采用的是 GeSHi Generic Syntax Highlighter —— 所以只要 GeSHi 有支持的,DokuWiki 亦可。

用法就类似前例的 <code> ,但要在标签(tag)内指定该原始码所使用的语言。比如 <code java> 举例:

/** 
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */   class HelloWorldApp {   public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

目前支持的语言有: actionscript, ada, apache, asm, asp, bash, caddcl, cadlisp, c, c_mac, cpp, csharp, css, delphi, html4strict, java, javascript, lisp, lua, mpasm, nsis, objc, oobas, oracle8, pascal, perl, php-brief, php, python, qbasic, smarty, sql, vb, vbnet, visualfoxpro, xml

可下载的代码块

若您使用上述的「<code>」或「<file>」语法,您或許希望让浏览者直接下载该段代码。您可以在语言代码后方指定一個文件名,方便浏览者下载:

<file php myexample.php>
<?php echo "hello world!"; ?>
</file>
myexample.php
<?php echo "hello world!"; ?>

若您不想把语法高亮显示出,但想方便浏览者下载,您可以用链接号「-」作语言代码。例如:「<code – myfile.foo>」。

RSS/ATOM Feed聚合

DokuWiki能從外部XML feed中聚合數據。爲分析這些XML feed,DokuWiki使用了SimplePie。凡是SimplePie能理解的格式,都可用於DokuWiki中。您可以更改不同的參數,以改變其渲染。參數之間請用空格隔開:

參數
描述

any number
最多顯示多少項內容;預設值是8。

reverse
將最新條目顯示在前面。

author
顯示條目的作者名字。

date
顯示條目數據。

description
顯示條目的描述;如果HTML被禁用,所有標籤將被過濾掉

n[dhm]
刷新周期,其中,d=日數,h=小時數,m=分。例如,12h=12小時。

預設的刷新周期是4小時。小於10分鐘者亦視爲10分鐘。DokuWiki通常會提供頁面的暫存版,但這做法不適用於包含動態外部內容的頁面。上面的參數則告訴DokuWiki:若對上一次渲染時間已經過了刷新周期,就要重新渲染頁面。

範例:

{{rss>http://slashdot.org/index.rss 5 author date 1h }}

控制巨集

有些語法會影響DokuWiki對頁面的渲染,而自身不輸出任何內容。可用的控制巨集如下:

巨集
描述

~~NOTOC~~
如果頁面出現該控制巨集,將不會創建目錄。

~~NOCACHE~~
DokuWiki預設會緩存所有的輸出。有時您並不希望這樣(例如您使用了上述的<php>語法),便可使用這控制巨集,強制DokuWiki在每次訪問時都重新渲染頁面。

語法附加元件

運用附加元件,可以擴充DokuWiki的語法。附加元件的安裝方法,請見其他相應頁面中說明。本wiki系統使用了下列附加元件:

  • Info Plugin 2013-02-16Andreas Gohr
    Displays information about various DokuWiki internals
  • Wrap Plugin 2013-03-24Anika Henke
    Universal plugin which combines functionalities of many other plugins. Wrap wiki text inside containers (divs or spans) and give them a class (choose from a variety of preset classes), a width and/or a language with its associated text direction.
  • Translation Plugin 2013-09-25Andreas Gohr
    Supports the easy setup of a multi-language wiki.

Dokuwiki插件与主题推荐

只是一个列表和简要的功能介绍,具体使用看相关文档

主题

Vector是模仿Wikipedia/Mediawiki最新样式的主题,自定义比较能力强。另外其实Dokuwiki现在的默认主题非常不错,也很适合写博客。

如果希望自己写,可以参考这里的文档以及Dokuwiki提供的一个初始模板

插件

外观

  • wrap:几乎涵盖大多数外观、排版上的要求。

交互

  • discussion:添加评论功能,需要pagelist插件的支持。
  • disqus: 添加评论功能,使用 DISQUS 的服务。
  • avatar:使用gravatar头像,多用于评论里的头像显示
  • captcha:验证码

标签

  • tag:用标签来组织内容
  • tagentry:在编辑栏下提供所有标签的列表,方便选择
  • cloud:标签云

导航

  • indexmenu:功能强大。但我不喜欢它默认的样式,又懒得去改。
  • indexmenu2:功能也不错,相对indexmenu略微逊色点
  • pagequery:前面两个主要用于生成树状结构的导航,这个完全不一样,非常值得一看。
  • simpleindex: 生成类似内置索引的简单导航,仅适用于顶层命名空间。
  • simplenavi: 生成一个简单的导航。

其他

还有很多看起来非常不错的,例如画图、化学、图片/视频浏览等,不过自己没用过。