欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Linux系统下搭建MantisBT环境以及Apache+PHP+MySql的安装

程序员文章站 2022-04-28 17:53:42
在Linux的系统下搭建MantisBT运行所需环境 MantisBT管理文档:http://www.mantisbt.org/docs/master/en-US/Admin_Guide/html-desktop/ MantisBT是一个基于网络的错误跟踪系统,是用PHP开发的,支持多种数据库后端, ......

在linux的系统下搭建mantisbt运行所需环境

mantisbt管理文档:http://www.mantisbt.org/docs/master/en-us/admin_guide/html-desktop/

mantisbt是一个基于网络的错误跟踪系统,是用php开发的,支持多种数据库后端,包括mysql和postgresql。mantisbt其实就是一个php脚本,可以在php支持的任何操作系统上运行

在文档 2.2.2 节服务器软件要求 中写到了关于环境的要求,并在⁠2.2.2.1节 版本兼容性表 中写到了各种软件的版本兼容性相关的内容(仔细看版本要求,不要安装到低版本了)

该文章中软件版本情况如下:
- mysql数据库版本:5.7.19
- apache服务器版本:2.4.35
- php版本:7.2.11

安装mysql

安装mysql前准备:

1、确认该环境中是否已安装mysql,如果已安装,自行选择是否重装。

2、下载mysql安装包
在 http://www.mysql.com/downloads/mysql/#downloads 下载mysql安装包:
mysql-community-server-8.0.13-1.fc28.x86_64.rpm
mysql-community-client-8.0.13-1.fc28.x86_64.rpm
mysql-community-devel-8.0.13-1.fc28.x86_64.rpm
mysql-community-libs-8.0.13-1.fc28.x86_64.rpm
这里包名仅作参考,根据实际系统下载对应的安装包。

使用rpm –ivh命令来安装mysql,这里不说啦。

了解一下mysql数据库的基本操作用法:

想要进入mysql数据库,输入"mysql"即可进入数据库,因为刚安装的mysql是没有密码的:

[root~]# mysql
welcome to the mysql monitor. commands end with ; or \g.
your mysql connection id is 3153
server version: 5.7.19 mysql community server (gpl)

copyright (c) 2000, 2017, oracle and/or its affiliates. all rights reserved.

oracle is a registered trademark of oracle corporation and/or its
affiliates. other names may be trademarks of their respective
owners.

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

mysql>

 

查看有哪些数据库:

mysql> show databases;
+--------------------+
| database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.02 sec)

mysql>
mysql>

 

切换数据库:

mysql> use mysql;
database changed
mysql>
mysql>

 

查看某个数据库中的所有表:

mysql> show tables;
+---------------------------+
| tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| engine_cost |
| event |
| time_zone_transition_type |
| user |
.......
+---------------------------+
31 rows in set (0.00 sec)

mysql>

 

如果此时想远程连接该数据库的话,还不行。需要改一点数据:

mysql> select host,user from user where user='root';
+----------+------+
| host | user |
+----------+------+
| localhost| root |
+------+------+
1 row in set (0.00 sec)
mysql>

将上面查询出来的host字段的值”localhost“改为“%”

mysql> updates user set host='%' where user='root';

 

mysql的启动、停止和重启:

[root~]# service mysqld start
[root~]# service mysqld stop
[root~]# service mysqld restart

 

安装apache服务器

安装apache前请停止并卸载linux系统自带的httpd服务。

下载apache安装包,httpd-2.4.35.tar.bz2,下载地址: http://httpd.apache.org/ 。

如果现在直接编译安装apache的话,会出现几个依赖包的问题,接下来先安装这几个依赖包
在 http://apr.apache.org/download.cgi 下载apr-1.6.5.tar.gz、apr-util-1.6.1.tar.gz。版本可选着两个版本,也可自行选择。

安装apr:

[root~]# tar -zxf apr-1.6.5.tar.gz
[root~]# cd apr-1.6.5
[root@apr-1.6.5]# ./configure --prefix=/usr/local/apr
[root@apr-1.6.5]# make
[root@apr-1.6.5]# make install

 

安装apr-util:

[root~]# tar -zxf apr-util-1.6.1.tar.gz
[root~]# cd apr-util-1.6.1
[root@localhost apr-util-1.6.12]# ./configure --prefix=/usr/local/apr-util -with-apr=/usr/local/apr/bin/apr-1-config
[root@localhost apr-util-1.6.1]# make
[root@localhost apr-util-1.6.1]# make install

 

安装pcre, 由于没有在网上找到pcre源码包,就直接采用yum的安装方式:

yum -y install pcre

 

待三个依赖程序安装完成后,接下来安装apache。进入httpd-2.4.35.tar.gz解压后的目录,再执行以下操作

./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
make
make install

 

apache服务器的启动、停止、与重启:

启动apache:/usr/local/apache2/bin/apachectl start
停止apache:/usr/local/apache2/bin/apachectl stop
重启apache:/usr/local/apache2/bin/apachectl restart

所有的项目都放在/usr/local/apache2/htdocs目录下;

在浏览器中输入 http://localhost 如果能够显示“it works!”字样,则代表apache验证通过。

 

安装php

安装php前准备:

1、检查php是否已经安装,使用php -v,是否能够看到版本号;或者使用rpm -qa | grep php查看是否安装过。

2、下载php安装包,下载地址:http://www.php.net/downloads.php 我下载的是php-7.2.11.tar.gz,放在linux的任意目录下。

tar -zxvf php-7.2.11.tar.gz
cd php-7.2.11

 

编译php完整的configure参数(请注意apache的路径

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/lib --enable-track-vars --with-xml --with-mysql-dir=/usr/include/mysql/mysql.h --with-zlib-dir=/usr/lib
make
make install

把配置文件php.ini-production拷贝到/usr/local/php/lib/下,并且命名为php.ini。

[root@ php-7.2.11]#cp php.ini-production /usr/local/lib/php.ini 
(一定要命名为php.ini,放在/usr/local/lib/路径下。然后在编译时可以指定php.ini的存放位置,也可以在apache里指定其位置;如果位置错误,php扩展就无法加载,phpinfo()测试页中看不到扩展信息)

 

配置apache中的php环境

需要修改apache的配置文件httpd.conf以得到php的解析:

目录:/usr/local/apache2/conf/httpd.conf
1、在loadmodule中添加:loadmodule php7_module modules/libphp7.so
2、在addtype application/x-gzip .gz .tgz下面添加:

# probably should define those extensions to indicate media types:
#
addtype application/x-compress .z
addtype application/x-gzip .gz .tgz
addtype application/x-httpd-php .php // 这一句是新增的
addtype application/x-httpd-php-source .phps // 这一句是新增的

3、如果网站的index后缀是php格式的,则要修改httpd.conf配置文件(/usr/local/apache2/conf),在directoryindex增加 index.php。

# directoryindex: sets the file that apache will serve if a directory
# is requested.
<ifmodule dir_module>
directoryindex index.html index.php
</ifmodule>

 

验证php环境:

在apache网站目录下新建php的phpinfo测试页

[root@~]# cd /usr/local/apache/htdocs/
[root@htdocs]# vim info.php

<?php

phpinfo();

?>

通过 http://localhost/info.php 验证,通过phpinfo()可以查看很多信息,比如php.ini的存放路径,以及所有扩展组件等,很强大。

 

修改php的环境变量

修改/etc/profile文件使其永久性生效,并对所有系统用户生效,在文件末尾加上如下两行代码

path=$path:/usr/local/php/bin/
export path

最后:执行 命令source /etc/profile使其修改生效,执行完可通过echo $path命令查看是否添加成功。

 

安装php扩展程序mbstring和mysqli

 安装mbstring

cd /usr/src/php-7.2.11/ext/mbstring
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make 
make install

然后修改php.ini配置文件,将”extension=mbstring“这一行前面的”;“去掉。
重启php,命令:

service php-fpm restart

如果没有安装php-fpm的话,就需要先安装一下

yum -y install php-fpm


重启完了后,php -m可以查看到已启动的扩展。

php -m

 

安装mysqli

cd /usr/src/php-7.2.11/ext/mysql
/usr/local/php/bin/phpize
./configure -prefix=/usr/local/mysqli -with-php-config=/usr/local/php/bin/php-config -with-mysqli=/usr/bin/mysql_config
make 
make install

这两个扩展安装完成后,都会返回一个路径

installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-xxxxxxx/

复制这个路径,然后修改php.ini配置文件,将”extension=mysqli“这一行前面的”;“去掉。再将extension_dir这一行前面的”;“去掉,将等号后面的”./“换成刚才这个路径。
这样做的目的是指明php扩展的具体位置。

然后重启php。

最后再重启一下电脑。

重启后在 http://localhost/info.php 页面上,找到mbstring和mysqli模块即为大功告成。

mbstring模块
Linux系统下搭建MantisBT环境以及Apache+PHP+MySql的安装

mysqli模块
Linux系统下搭建MantisBT环境以及Apache+PHP+MySql的安装

部署开源mantisbt项目

在 http://www.mantisbt.org/download.php 下载开源的mantisbt,下载后将文件夹名更改为mantisbt(也可以不改,但是项目名最好不带特殊符号),放到/usr/local/apache2/htdocs/目录下;
在地址栏输入 http://localhost/mantisbt/admin/install.php ,将会显示一下界面:
Linux系统下搭建MantisBT环境以及Apache+PHP+MySql的安装

到此,linux系统下搭建mantisbt环境已全部完成。
后续会将遇到的问题以及解决的方案,补写上来。