系统版本: CentOS Linux release 7.7.1908 (Core)
通过网上学习wiki搭建了部门知识库,综合网上资料,结合实际遇到的问题,总结分享出来以供参考。
Dokuwiki 的安装需要apache服务和php环境的支持,所以要先安装httpd和php,第1、2步下载完,相关的依赖包都会一并下载
yum -y install httpd
①查看yum源中有没有php7.x
yum search php7
警告:没有匹配 php7 的软件包
②由于linux的yum源不存在php7.x,所以我们要更改yum源:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
也可以选择下面的这个命令,效果一样:
yum install epel-release -y
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
③查看目前能够安装的PHP版本(最新版)
yum list php*
④移除系统自带的php-common
yum remove php-common -y
⑤yum 安装php72w和各种扩展包
这里注意cli和fpm这两个包,运行以下命令即可,其他扩展包看个人需求选择
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-gd
完整的扩展包安装:
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
⑥查看php版本
php -v
⑦查看所有扩展
php -m
因为用yum命令找不到安装包,所以直接去官网下载稳定版
wget -c http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
tar -zvxf dokuwiki-stable.tgz
apache 默认地址是 /var/www/html ,所以把dokuwiki程序包解压到此路径下
mv dokuwiki-2018-04-22b/ /var/www/html/dokuwiki
#httpd 默认启动的用户及组是 apache,所以修改文件夹所属用户及组
chown -R apache:apache /var/www/html/dokuwiki
chmod -R 775 /var/www/html/dokuwiki
nano /etc/httpd/conf/httpd.conf
①更改根目录
DocumentRoot "/var/www/html"改为DocumentRoot “/var/www/html/dokuwiki”
②更改访问权限
原来:
#Relax access to content within /var/www.
#
AllowOverride None
# Allow open access:
Require all granted
#Further relax access to the default document root:
更改后:
#Relax access to content within /var/www/html/dokuwiki.
#
AllowOverride None
# Allow open access:
Require all granted
#Further relax access to the default document root:
③对URL进行过滤以保证数据安全,在 httpd.conf 添加下面代码:
order allow,deny
deny from all
satisfy all
①启动httpd
service httpd start
相关命令扩展:
#重启方式
systemctl restart httpd
#停止服务
systemctl stop httpd
②查看状态
systemctl status httpd
③开机自启httpd
chkconfig --levels 235 httpd on
检查端口80是否有开通
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
①临时关闭(不用重启机器)
设置SELinux 成为permissive模式
setenforce 0
设置SELinux 成为enforcing模式
setenforce 1
②永久关闭(需要重启系统)
修改/etc/selinux/config 配置文件
nano /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
重启系统即可
web访问:http://IP/install.php
开放的维基(任何人都有读、写、上传的权限)
公开的维基(任何人都有读的权限,只有注册用户才有写和上传的权限)
关闭的维基(只有注册用户才有读、写、上传的权限)
填写完成后按“保存”完成安装。
登陆进入http://IP/doku.php或者域名/doku.php
rm -f /var/www/html/dokuwiki/install.php
问题一:Dokuwiki Setup Error(待完善)
DokuWiki Setup Error
The datadir (‘pages’) at ./data/pages is not found, isn’t accessible or writable. You should check your config and permission settings. Or maybe you want to run the installer?
解决方法:用yum命令先安装 httpd,再安装 php。开始的时候直接用 yum 安装 php,通过依赖会自动安装其他环境,包括 httpd,但是一直报 Dokuwiki Setup Error,网上都没有找到解决方法,后来重新搭一个环境,先装 httpd,再装 php,就没有出现这个错误了
问题二:如果访问时显示 403 Forbidden,需要关闭SELinux
1.查看SELinux状态:
①如果SELinux status参数为enabled即为开启状态
/usr/sbin/sestatus -v
SELinux status: enabled
②也可以用getenforce命令检查
getenforce
2.关闭SELinux:
①临时关闭(不用重启机器)
设置SELinux 成为permissive模式
setenforce 0
设置SELinux 成为enforcing模式
setenforce 1
②永久关闭(需要重启机器)
修改/etc/selinux/config 配置文件
nano /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
重启机器即可
问题三:CentOS7升级任意版本php到php7.2
前言:
CentOS7下安装PHP默认是5.4的,但是有些框架要求PHP的版本得在5.4以上,
现在的框架大多要求php7以上的,比如typo3.8.x,必须7.0+;typo3.9.x,必须php7.2+。
这时候我们就需要把PHP升级一下了。
1.匹配yum源
yum provides php
2.开始升级php
①更新源
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
②移除系统自带的php-common
③安装依赖关系包
yum remove php-common -y
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
④查看版本
php -v
未完待续…