DOKUWIKI的安装以及DOKUWIKI与WORDPRESS共存
环境:Centos7
踩坑:
- php在httpd之前安装的话,httpd安装不后,并不会对php进行加载依赖。会造成install.php访问时无法解析。
- 该错误通过在httpd/conf.d目录下进行查看,未发现php.conf,且在httpd.conf文件中未发现任何对php.so文件加载。得知httpd此时无法与php进行解析绑定。
解决方法:
- 卸载php,重新安装之后,进入httpd/conf.d里面查看,发现php.conf文件。
1.下载并安装httpd
yum -y install httpd
2.下载并安装PHP
- 注意:如果在安装httpd之前,就将PHP安装完毕的话,那么httpd自动生成的conf.d目录下面就不会生成,从而造成无法正常解析PHP。此时需要先卸载掉PHP,再重新安装一遍。并且在httpd.conf文件里面加上
AddType application/x-httpd-php .php
DirectoryIndex index.php index.htm index.html
①查看yum源中有没有php7.x
yum search 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
③查看目前能够安装的PHP版本(最新版)
yum list php*
④移除系统自带的php-common
yum remove php-common -y
⑤yum 安装php72w和各种扩展包
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
- 注意:此处用72做例子,可以自选其他版本,只要源里面有即可
3.下载并解压dokuwiki程序包
wget -c http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
tar -zvxf dokuwiki-stable.tgz
4.将解压后的文件夹移到 apache 默认路径中
apache 默认地址是 /var/www/html ,所以把dokuwiki程序包解压到此路径下
mv dokuwiki-***/ /var/www/html/dokuwiki
5.修改文件夹所属用户及组
httpd 默认启动的用户及组是 apache,所以修改文件夹所属用户及组
chown -R apache:apache /var/www/html/dokuwiki
chmod -R 775 /var/www/html/dokuwiki
6.修改httpd配置文件
①更改根目录
DocumentRoot "/var/www/html"改为DocumentRoot “/var/www/html/dokuwiki”
②更改访问权限
原来:
#Relax access to content within /var/www.
#
<Directory "/var/www">
AllowOverride None
# Allow open access:
Require all granted
</Directory>
#Further relax access to the default document root:
<Directory "/var/www/html">
更改后:
#Relax access to content within /var/www/html/dokuwiki.
#
<Directory "/var/www/html/dokuwiki">
AllowOverride None
# Allow open access:
Require all granted
</Directory>
#Further relax access to the default document root:
<Directory "/var/www/html/dokuwiki">
③对URL进行过滤以保证数据安全,在 httpd.conf 添加下面代码:
<LocationMatch "/(data|conf|bin|inc)/">
order allow,deny
deny from all
satisfy all
</LocationMatch>
//默认有这行代码
- 注意:此处可以对端口进行修改,因为默认是80端口,但是如果你的80端口有其他应用进行占用的话,就可以自行进行修改
6.启动/设置httpd
①启动httpd
systemctl start httpd
systemctl status httpd
systemctl restart httpd
②开机自启httpd
chkconfig --levels 235 httpd on
7. firewall 开通你在httpd.conf里面配置的端口
检查端口是否有开通
firewall-cmd --zone=public --add-port=**/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
8.关闭SELinux防火墙:
①临时关闭(不用重启机器)
设置SELinux 成为permissive模式
setenforce 0
设置SELinux 成为enforcing模式
setenforce 1
②永久关闭(需要重启系统)
修改/etc/selinux/config 配置文件
vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
重启系统即可
9.访问 install.php 进行最后安装
web访问:http://IP/install.php
10.安装配置
- 维基名称:随意取,比如我的是ruoyun
- 启用ACL(推荐):即启用权限控制,这个保持默认(选中状态)
- 超级用户:输入超级用户的用户名
- 全名:超级用户的全名
- E-Mail:超级用户的电子邮件地址
- 密码:超级用户的密码
- 请再输一次:再次输入密码
- 初始的ACL政策:全局权限控制策略,在下拉列表中选择一个合适的,我一般选第3个,以后配访问权限可以再调整开放哪部分内容
- 开放的维基(任何人都有读、写、上传的权限)
- 公开的维基(任何人都有读的权限,只有注册用户才有写和上传的权限)
- 关闭的维基(只有注册用户才有读、写、上传的权限)
填写完成后按“保存”完成安装。
登陆进入http://IP/doku.php或者域名/doku.php
11.安装成功后,删除 install.php
rm -f /var/www/html/dokuwiki/install.php
12.出现错误,wordpress出现404
因为nginx和httpd的配置文件出现了端口冲突,将httpd里面弄两个虚拟服务,nginx里面分别进行转发。
-
https://blog.csdn.net/ITYang_/article/details/53907937
-
httpd.conf文件位置:/etc/httpd/conf/httpd.conf
-
nginx.conf文件位置:/etc/nginx/nginx.conf
用httpd绑定8080端口,并且建立虚拟服务,nginx绑定80端口。
- 访问dokuwiki
- 在nginx里面进行doku.waterwaves.xyz的转发,直接转发到本地的8080端口,而httpd会对8080端口进行绑定监听,从而跳转到虚拟服务里面的dokuwiki目录。
- 访问wordpress
- 在nginx里面进行word.waterwaves.xyz的转发,直接转发到本地的80端口,跳转到里面的wordpress目录。