Dokuwiki知识库部署及搭建

一、Dokuwiki简介

DokuWiki是一个开源wiki引擎程序,运行于PHP环境下,简单易用且高度通用,不需要数据库,它因自身简单易读的语法受到用户的喜爱。

dokuwiki可以用作企业知识库、私人笔记本、软件手册、项目工作区、cms内联网等。

dokuwiki优点:易于安装和使用,系统要求低,内置访问控制列表,扩展功能多,支持超过50多种语言,独立于设备,开源等。

二、Dokuwiki在Linux上的搭建

官网安装指南:zh:install [DokuWiki]https://www.dokuwiki.org/zh:install

1、环境要求

PHP版本版本需要最低5.6、apache、内存充足

2、PHP安装 

安装依赖包:
[root@localhost ~]# yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
到php官网找到php7.3.8包下载并上传至服务器
[root@localhost ]# tar -xvf php-7.3.8.tar
[root@localhost ]# cd php-7.3.8
 配置:
[root@localhost php-7.3.8]# ./configure \
--prefix=/usr/local/php \
--exec-prefix=/usr/local/php \
--bindir=/usr/local/php/bin \
--sbindir=/usr/local/php/sbin \
--includedir=/usr/local/php/include \
--libdir=/usr/local/php/lib/php \
--mandir=/usr/local/php/php/man \
--with-config-file-path=/usr/local/php/etc \
--with-curl \
--with-zlib \
--with-openssl \
--enable-mbstring \
--enable-fpm \ 
--enable-bcmath \
--enable-ftp \
--enable-gd2 \
--enable-sockets \
--enable-pcntl \
--enable-mysqlnd \
--with-pdo-mysql=mysqlnd
编译安装:
[root@localhost php-7.3.8]# make && make install
生成 php.ini 配置文件:
[root@localhost php-7.3.8]# cp php.ini-production /usr/local/php/etc/php.ini
生成 php-fpm 文件:
[root@localhost php-7.3.8]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@localhost php-7.3.8]# chmod +x /etc/init.d/php-fpm
生成 php-fpm 配置文件:
[root@localhost php-7.3.8]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
将系统的时区修改为中国时区:
[root@localhost php-7.3.8]# vim /usr/local/php/etc/php.ini
date.timezone = PRC
添加环境变量:
[root@localhost php-7.3.8]# vim /etc/profile.d/php.sh
export PATH=$PATH:/usr/local/php/bin/:/usr/local/php/sbin/
使环境变量生效:
[root@localhost php-7.3.8]# source /etc/profile.d/php.sh
启动php-fpm:
[root@localhost php-7.3.8]# service php-fpm start
设置php开机启动:
[root@localhost php-7.3.8]# chmod +x /etc/init.d/php-fpm
[root@localhost php-7.3.8]# chkconfig --add php-fpm
[root@localhost php-7.3.8]# chkconfig php-fpm on
查看是否安装成功:
[root@localhost ~]# php -v
PHP 7.3.8 (cli) (built: Jan 28 2023 19:25:42) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.8, Copyright (c) 1998-2018 Zend Technologies

 遇到的问题:安装完php之后,发现浏览器访问时Apache不解析php文件,显示页面为php源码,搜索找到的解决方法链接:apache2+phpfpm配置_paul_god的博客-CSDN博客_apache php-fpm

3、Apache安装

yum install -y httpd
systemctl start httpd
systemctl enable httpd
[root@localhost ~]# ps -ef | grep httpd
root        917      1  0 2月02 ?       00:00:01 /usr/sbin/httpd -DFOREGROUND
apache     1009    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1010    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1011    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1012    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1013    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1190    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1197    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1198    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1199    917  0 2月02 ?       00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1323    917  0 02:39 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root       1375   1300  0 03:40 pts/0    00:00:00 grep --color=auto httpd

4、dokuwiki安装 

Download DokuWiki
从以上链接下载dokuwiki安装包并上传至服务器,将dokuwiki解压到apache http服务器的位置上:/var/www/html/,

设置权限:

chown -R apache:apache /var/www/html/dokuwiki

将“/var/www/html/”的用户和用户组设置为apache,通过Apache服务器访问的用户为Apache,为了保证服务器可以修改该目录下的数据

chmod -R 755 /var/www/html/

设置用户修改权限

进入 /var/www/html/目录

 chmod -R 777 data/ 
 chmod -R 777 lib/ 
 chmod -R 777 conf/

编辑httpd.conf

vim /etc/httpd/conf/httpd.conf


在<Directory /var/www>.....后插入代码

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

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

开通端口(也可以直接将防火墙关闭)

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --reload

关闭SELinux防火墙(如果资源无法访问)

临时关闭:setenforce 0
临时开启:setenforce 1

永久关闭:修改/etc/selinux/config
vim /etc/selinux/config
将SELINUX=enforcing 改为 SELINUX=disable
重启电脑

启动dokuwiki

systemctl enable httpd.service
Systemctl start httpd

访问wiki

http://IP/dokuwiki/install.php

三、dokuwiki部署

1、页面注册

dokuwiki安装配置完之后进入以上页面,然后根据页面框提示输入有效内容,然后通过自己所注册的超级用户登录,并为自己创建一个开始页面。

2、logo更改

(1)简单版:点击左上角的媒体管理器,选择wiki命名空间,选择上传---选择文件(事先将要上传的logo图片命名为logo.png,)---点击上传,上传成功后刷新页面左上角logo即变为新的logo。

(2)更深的:Linux上/var/www/html/lib/tpl/dokuwikilu/tpl_header.php文件,第21行和第23行:

// get logo either out of the template images folder or data/media folder
[...]
$logo = tpl_getMediaFile(array(':wiki:logo.png', 'images/logo.png'), false, $logoSize);

tpl_getMediaFile()函数将在名为wiki的媒体名称空间中查找文件logo.png命名的图片文件当做logo图片, 所以还是在dokuwiki文件管理器的wiki名称空间上传了我的logo.png文件,之后刷新页面便得到了新的logo图片。 

3、模板

模板也就是主题,选择自己想要的风格,下载后解压到服务器后台/lib/tpl目录下,然后在管理--配置设置中选择即可。

4、插件安装

通过插件的安装实现更多dokuwiki扩展功能,使用户使用起来更加得心应手。

安装插件的方法有 2 种:一种是在线安装;一种是先下载插件包,然后在本地安装。

在线安装:以管理员身份登录,然后点左上角的管理--扩展管理器--搜索安装,输入插件的名字或者关键字,点击搜索,如果有匹配的,就会显示出来,点击你要的进行安装。需要注意的是,搜索的时候要按英文名搜索。

本地安装:如果搜索安装无法搜索出来或者提示报错信息,可以选择手动安装,找到需要安装的插件的下载地址,下载安装包到本地,然后直接解压服务器后台 dokuwiki\lib\plugins 目录下,或者通过页面按钮--上传扩展--选择文件--点击安装。

以下是一些常用插件下载链接及介绍使用:

(1)Add New Page :

下载及详细介绍用法地址:http://www.dokuwiki.org/plugin:addnewpage

安装了这个插件后,用户可以通过浏览器页面创建命名空间(即目录)和页面。

在这里插入图片描述

设置方法:点击 welcome 界面,再点击 sidebar

 这时候会显示“该主题尚不存在”,点击右侧的“创建该页面”,输入 {{NEWPAGE}},再保存,就可以创建了。

如何创建方法:



dokuwiki学习(一)——增加页面命名空间_狂热森林的博客-CSDN博客_dokuwiki 命名空间

dokuwiki学习(二)——新增页面(文章)_狂热森林的博客-CSDN博客_如何在dokuwiki中添加一个页面在其中词条

(2) indexmenu:

下载及详细介绍用法地址: https://www.dokuwiki.org/plugin:indexmenu

此插件允许插入一个完全可自定义的索引或从指定命名空间开始的页面列表,也就是可以在左边栏增加一个导航列表,可按日期、标题和自定义元数据信息进行排序。设置方法:安装完之后,在 sidebar 页面的尾部添加{{indexmenu>:}}

实现效果:

注意问题:如何给侧边栏排序

tsort
撤消:notsort
按标题对(仅)页面进行排序。启用标题时很有用。默认情况下,命名空间不排序,您需要 nsort 选项。
dsort
撤消:nodsort
按日期创建(首先是最早的)对页面进行排序(仅)。默认情况下,命名空间不排序,您需要 nsort 选项。
msort[#meta]
撤消:nomsort
按自定义元数据信息对(仅)页面进行排序。如果没有参数,即 ,它会查找使用语法指定的自定义排序编号(请参阅下面的元数据标记语法)。
使用参数可以引用元数据结构(数组值通过“:”分隔符进行管理,例如:)。#metamsort{{indexmenu_n>N}}#metamsort#date:modified
默认情况下,没有元数据标记的页面按页面名称排序(默认的 DokuWiki 方式),但您也可以在索引菜单语法中添加 tsort 或 dsort 选项来覆盖此行为。默认情况下,命名空间不排序,您需要 nsort 选项。
hsort
撤消:nohsort
将配置设置起始页定义的头排序到顶部msort 否决 hsort
rsort
撤消:norsort
反转页面排序(在升序和降序之间切换)。默认情况下,命名空间不排序,您需要 nsort 选项。
nsort
撤消:nonsort
还可以根据页面排序选项对命名空间进行排序,但要单独分组。除了上述排序选项之外使用。tsort、dsort、msort、hsort 仅在使用头页时适用于命名空间。rsort 始终与 nsort 一起适用。
nons
撤消:ns
从索引中排除命名空间节点。它仅显示页面。如果没有 js,关闭 n 命名空间选项会阻止显示低于 n 命名空间级别的节点。
nopg
撤消:pg
从索引中排除页面节点。它仅显示命名空间。所有命名空间节点都将链接到起始页(由起始页设置定义)

(3)move

下载及详细介绍用法地址:plugin:move [DokuWiki]

这个插件允许移动包含媒体文件的页面和名称空间,并自动调整指向这些页面的所有链接和媒体引用。 此插件不更新 ACL 规则。例如,如果您有一个 ACL 规则,该规则对某个 wiki 页面进行读保护,那么在移动该页面之后,该规则将不再有任何效果。除了重命名一个页面外,该插件需要管理员特权才能使用。

使用方法:以管理员身份登录,点击右上角的“管理”

 注意问题:移动过程中注意一个命名空间下移动页面的命名冲突问题

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亲爱的老少女

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值