CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

时间:2023-09-05 22:18:31

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

by:授客 QQ1033553122

目录

一、

二、

三、

四、

五、

六、

一、      实践环境

CentOS 7操作系统(CentOS-7-x86_64-DVD-1503-01.iso)

下载地址:http://ftp.riken.jp/Linux/centos/7/isos/x86_64/

Apache HTTP Server(httpd-2.4.17.tar.gz)

下载地址1:http://pan.baidu.com/s/1c1pfUiW

下载地址2:http://httpd.apache.org/download.cgi

MariaDB 10.0(MariaDB-10.0.19-centos7-x86_64)

下载地址1:http://pan.baidu.com/s/1jH3gPbK

下载地址2:https://downloads.mariadb.org/mariadb/+releases/

PHP 7.0(php-7.0.0.tar.gz)

下载地址1: http://pan.baidu.com/s/1o7v7hou

下载地址2:http://php.net/downloads.php

禅道项目管理软件8.0.stable版本(ZenTaoPMS.8.0.stable.zip)

下载地址1:http://pan.baidu.com/s/1bolelv5

下载地址2:

http://sourceforge.net/projects/zentao/files/8.0/ZenTaoPMS.8.0.stable.zip/download

Apache Server安装相关依赖软件

apr(apr-1.5.2.tar.gz), apr-util(apr-util-1.5.4.tar.gz)

下载地址:http://mirrors.cnnic.cn/apache/apr/

pcre(pcre-8.37.tar.gz)

下载地址:http://pcre.org/

PHP安装相关依赖软件

libxml2(libxml2-2.6.27.tar.gz)

下载地址:http://download.chinaunix.net/download/0007000/6095.shtml

以上依赖软件包集合下载地址2:http://pan.baidu.com/s/1hrsv7nu

二、      安装操作系统

软件选择(SOFTWARE SELECTION):

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

磁盘分区(INSTALLATION
DESTINATION)

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署


三、     


安装
MariaDB数据库


安装

[root@localhost
home]# ls

lost+found                                
MariaDB-10.0.19-centos7-x86_64-server.rpm

MariaDB-10.0.19-centos7-x86_64-client.rpm 
MariaDB-10.0.19-centos7-x86_64-shared.rpm

MariaDB-10.0.19-centos7-x86_64-common.rpm 
MariaDB-10.0.19-centos7-x86_64-test.rpm

MariaDB-10.0.19-centos7-x86_64-devel.rpm

[root@localhost
home]# rpm
-iUvh MariaDB*.*

warning:
MariaDB-10.0.19-centos7-x86_64-client.rpm: Header V4 DSA/SHA1
Signature, key ID 1bb943db: NOKEY

Preparing...                         
################################# [100%]

Updating /
installing...

1:MariaDB-common-10.0.19-1.el7.cent#################################
[ 14%]

2:MariaDB-client-10.0.19-1.el7.cent#################################
[ 29%]

started; log
sequence number 1616697

……(略)

PLEASE REMEMBER
TO SET A PASSWORD FOR THE MariaDB root USER !

To
do so, start the server, then issue the following
commands:

'/usr/bin/mysqladmin' -u root password 'new-password'

'/usr/bin/mysqladmin' -u root -h localhost.localdomain password
'new-password'

Alternatively you
can run:

'/usr/bin/mysql_secure_installation'

which will also
give you the option of removing the test

databases and
anonymous user created by default.  This is

strongly
recommended for production servers.

……(略)

4:MariaDB-devel-10.0.19-1.el7.cento#################################
[ 57%]

5:MariaDB-shared-10.0.19-1.el7.cent#################################
[ 71%]

6:MariaDB-test-10.0.19-1.el7.centos#################################
[ 86%]

Cleaning up /
removing...

7:mariadb-libs-1:5.5.41-2.el7_0   
################################# [100%]

编辑/etc/my.cnf文件,添加如下带背景色内容

[root@localhost
~]# vim
/etc/my.cnf

#

#
This group is read both both by the client and the
server

#
use it for options that affect everything

#

[client-server]

#

#
include all files from the config directory

#

!includedir
/etc/my.cnf.d

[mysqld]

user=mysql

~

~


启动数据库服务器

[root@localhost
home]# /usr/sbin/mysqld
--user=mysql


修改
root用户密码                    
                             

[root@localhost
home]# /usr/bin/mysqladmin
-u root password 'test1234'


进行安全设置

[root@localhost
home]# /usr/bin/mysql_secure_installation

NOTE: RUNNING ALL
PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB

SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP
CAREFULLY!

In
order to log into MariaDB to secure it, we'll need the
current

password for the
root user. 
If you've just installed MariaDB, and

you haven't set
the root password yet, the password will be blank,

so
you should just press enter here.

Enter current
password for root (enter for none):

OK, successfully
used password, moving on...

Setting the root
password ensures that nobody can log into the MariaDB

root user without
the proper authorisation.

You already have
a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] n

...
skipping.

By
default, a MariaDB installation has an anonymous user, allowing
anyone

to
log into MariaDB without having to have a user account created
for

them.  This is intended only
for testing, and to make the installation

go
a bit smoother.  You should remove them
before moving into a

production
environment.

Remove anonymous users? [Y/n] y

... Success!

Normally, root
should only be allowed to connect from 'localhost'.  This

ensures that
someone cannot guess at the root password from the
network.

Disallow root login remotely? [Y/n] n

...
skipping.

By
default, MariaDB comes with a database named 'test' that anyone
can

access. 
This is also intended only for testing, and should be
removed

before moving
into a production environment.

Remove test database and access to it? [Y/n] y

- Dropping test
database...

... Success!

- Removing privileges
on test database...

... Success!

Reloading the
privilege tables will ensure that all changes made so
far

will take effect
immediately.

Reload privilege tables now? [Y/n] y

... Success!

Cleaning
up...

All
done!  If
you've completed all of the above steps, your MariaDB

installation
should now be secure.

Thanks for using
MariaDB!


创建用户与授权

[root@localhost
~]#
mysql -u root -ptest1234

Welcome to the
MariaDB monitor.  Commands end with ; or
\g.

Your MariaDB
connection id is 5

Server version:
10.0.19-MariaDB MariaDB Server

Copyright (c)
2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or
'\h' for help. Type '\c' to clear the current input
statement.

MariaDB
[(none)]> create
user 'testacc'@'182.168.1.103' identified by
'test1234';

Query OK, 0 rows
affected (0.00 sec)

MariaDB
[(none)]> grant
all on *.* to 'testacc'@'%' identified by
'test1234';

Query OK, 0 rows
affected (0.00 sec)

> grant
all privileges on *.* to 'testacc'@'192.168.1.100'identified by
'test1234';

Query OK, 0 rows affected (0.00 sec)

> flush
privileges;

注:这里192.168.1.100为mysql客户端所在主机,即我本地主机


四、     


安装
Apache
Server


安装相关依赖软件

[root@localhost
tmp]# tar
-xvzf apr-1.5.2.tar.gz

……(略)

[root@localhost
tmp]# tar
-xvzf apr-util-1.5.4.tar.gz

……(略)

[root@localhost
tmp]# tar
-xvzf pcre-8.37.tar.gz

……(略)

1、安装pcre

[root@localhost
yum.repos.d]# yum
install gcc

……(略)

[root@localhost
yum.repos.d]# yum
install gcc-c++

……(略)

注:如果编译pcre时未安装gcc,gcc-c++,会分别报告如下错误

configure:
error: no acceptable C compiler found in $PATH

configure:
error: You need a C++ compiler for C++ support.

安装pcre

[root@localhost
tmp]# cd pcre-8.37

[root@localhost
pcre-8.37]# ./configure
--prefix=/usr/local/pcre

……(略)

[root@localhost
pcre-8.37]# make
&& make install

……(略)

2、安装apr

[root@localhost
tmp]# cd apr-1.5.2/

[root@localhost
apr-1.5.2]# ./configure
--prefix=/usr/local/apr

……(略)

[root@localhost
apr-1.5.2]# make
&& make install

……(略)

3、安装apr-util

[root@localhost
tmp]# cd apr-util-1.5.4/

[root@localhost
apr-util-1.5.4]# ./configure
--prefix=/usr/local/apr-util
--with-apr=/usr/local/apr

……(略)

[root@localhost
apr-util-1.5.4]# make
&& make install

……(略)


安装
Apache
Server

[root@localhost
tmp]# tar
-xvzf httpd-2.4.17.tar.gz

[root@localhost
tmp]# cd
httpd-2.4.17/

[root@localhost
httpd-2.4.17]# ./configure
--prefix=/usr/local/apache --with-apr=/usr/local/apr
--with-apr-util=/usr/local/apr-util
--with-pcre=/usr/local/pcre

……(略)

[root@localhost
httpd-2.4.17]# make
&& make install

……(略)


简单配置与启动

编辑httpd.conf,找到ServerName,去掉注释符号,或者在其下新增一行

[root@localhost
httpd-2.4.16]# vim /usr/local/apache/conf/httpd.conf

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

启动服务

[root@localhost
httpd-2.4.16]# /usr/local/apache/bin/apachectl -k start


访问

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署
CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

注意:如果无法访问,关闭防火墙或者开放端口(临时),如下

[root@localhost
services]# systemctl
stop firewalld.service

[root@localhost
services]# iptables
-I INPUT -p TCP --dport 80 -j ACCEPT

注:建议先临时关闭防火墙,否则后面的数据库用户也无法远程连接,这会导致禅道安装失败


五、     

PHP安装与配置


安装依赖包

[root@localhost
tmp]# tar
-xvzf libxml2-2.6.27.tar.gz

[root@localhost
tmp]# cd libxml2-2.6.27

[root@localhost
libxml2-2.6.27]# ./configure
--prefix=/usr/local/libxml12

……(略)

[root@localhost
libxml2-2.6.27]# make
&& make install

……(略)


安装
php

[root@localhost
tmp]# tar -xvzf php-7.0.0.tar.gz

……(略)

[root@localhost
php-7.0.0]# yum
install php

……(略)

[root@localhost
php-7.0.0]# ./configure
--prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs
--with-libxml-dir=/usr/local/libxml12/  --with-pdo-mysql

……(略)

[root@localhost
php-7.0.0]# make
&& make install

……(略)

注: 
--with-pdo-mysql非常重要,如果这里不指定该选项,安装禅道时可能会报错,如下,pdo_mysql扩展未加载

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

以下是php官网文档中的部分(也就是不用自己去单独编译安装PDO_MYSQL扩展了,网上关于这个的安装教程笔者试过,死活不行,各种错误)

For example, on
Ubuntu the php5-mysql package installs the ext/mysql,
ext/mysqli, and PDO_MYSQL PHP extensions. On
CentOS, the php-mysql package also installs these three PHP
extensions.

Alternatively,
you can compile this extension yourself. Building
PHP from source allows you to specify the MySQL extensions you want
to use, as well as your choice of client library for each
extension.

When compiling, use --with-pdo-mysql[=DIR] to install the
PDO MySQL extension, where the
optional [=DIR] is the MySQL base library. As of PHP
5.4, mysqlnd
is the
default library. For details about choosing a library, see
Choosing a MySQL library.

Optionally, the
--with-mysql-sock[=DIR] sets to location to the MySQL unix
socket pointer for all MySQL extensions, including PDO_MYSQL. If
unspecified, the default locations are searched.

Optionally, the
--with-zlib-dir[=DIR] is used to set the path to the libz
install prefix.

$
./configure --with-pdo-mysql
--with-mysql-sock=/var/mysql/mysql.sock

参考连接:http://php.net/manual/en/ref.pdo-mysql.php


配置
php

[root@localhost
php-5.6.12]#
cp php.ini.dist /usr/local/php/lib/php.ini

注:如果没有php.ini.dist

则把php.ini-development
php.ini-production中的任何一个重命名为php.ini.dist即可

配置 httpd.conf

让apache支持PHP

# vim /usr/local/apache/conf/httpd.conf

找到 AddType
application/x-gzip .gz .tgz ,然后添加如下带背景颜色的内容(.前面有空格)

#################Added
by laiyu##################

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

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

#AddType application/x-gzip .tgz

重启Apache

[root@localhost
php-7.0.0]# /usr/local/apache/bin/apachectl stop

[root@localhost
php-7.0.0]# /usr/local/apache/bin/apachectl start

测试php是否成功安装

写一个php测试页info.php,放到Apache的htdocs目录下。

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

在浏览器中输入:服务器地址/info.php,如:http://192.168.40.80/info.php

如果可看到php版本,系统等相关信息则表示成功了

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

修改改配置文件php.ini

1、找到如下带背景色内容,去掉注释符号“;”

extension=php_mysqli.dll

;extension=php_oci8_12c.dll  ; Use with Oracle
Database 12c Instant Client

;extension=php_openssl.dll

;extension=php_pdo_firebird.dll

extension=php_pdo_mysql.dll

2、找到如下带背景色内容,再其下新增如下内容

; The path can be defined
as:

;

;    
session.save_path = "N;/path"

(注:以下带背景色内容为新增的)

;    
added by shouke

session.save_path = "0;/var/lib/php/session/"

;

; where N is an
integer. 
Instead of storing all the session files in

; /path, what this will do is
use subdirectories N-levels deep, and

; store the session data in
those directories.  This is useful
if

; your OS has problems with
many files in one directory, and is

a more efficient layout for
servers that handle many sessions.

; NOTE 1: PHP will not create
this directory structure automatically.

;        
You can use the script in the ext/session dir for that
purpose.

; NOTE 2: See the section on
garbage collection below if you choose to

;        
use subdirectories for session storage

;

; The file storage module
creates files using mode 600 by default.

; You can change that by
using

;

;    
session.save_path = "N;MODE;/path"

说明:如上,session.save_path
= "N;MODE;/path",其中,N

表示多级目录,值为数字,如果大于0,则不会执行自动垃圾回收,对于绝大多数站点,大于1或者2的值会不太合适——因为这需要创建大量的目录:例如,值设置为

3
需要在文件系统上创建
64^3
个目录,将浪费很多空间和
inode。仅仅在绝对肯定站点足够大时,才可以设置

N
大于2。MODE

表示创建的
Session
文件权限,默认使用
mode 600
创建文件。/path

表示
Session
存储路径

保存,重启Apache

找到; extension_dir =
"./",在其下新增一行,如下带背景色内容

;
http://php.net/extension-dir

;
extension_dir = "./"

extension_dir = "/usr/local/php/lib/php/extensions"

;
On windows:

;
extension_dir = "ext"

说明:这一步修改操作或许可以不执行,

修改会话存储目录权限

[root@localhost
session]# chmod
o=rwx -R /var/lib/php/session/

注:如果这里进行修改权限操作,那么安装禅道时可能会报如下错误

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署


六、     


安装禅道项目管理系统(
PMS

[root@localhost
tmp]#unzip 
ZenTaoPMS.8.0.stable.zip

……(略)

[root@localhost
tmp]#mv
zentaopms /usr/local/apache/htdocs/

接着打开浏览器访问

http://192.168.1.103/zentaopms/www/index.php

打开后会出现一个界面,上面有一个大大的安装按钮,点击安装按钮开始安装(不好意思,这一步忘记截图了)

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

如上,勾选协议,点击【下一步】,

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

如上,点击下一步

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署
CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

如上,填写数据库相关信息,注意这里的信息必须准确填写,,点击【保存】

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

如上,点击【下一步】

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

如上,输入公司名称,超级管理员帐号和密码信息,点击【保存】

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

如上,安装成功,有必要的话删除安装文件install.php,点击【登陆禅道管理系统】

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署



登陆,查看

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

查看数据库

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署

注:要么关闭防火墙,要么开放相关端口并写入静态配置文件,不然会出现无法访问的情况。

接下来的问题:

1.假如以上部署在内网,咋让外网的人员也可以访问呢?

2.数据备份

pdf版下载:

CentOS7+ApacheServer2.4+MariaDB10.0+PHP7.0+禅道项目管理软件8.0环境部署.pdf