详解Linux系统安装Mantis的全过程
(适合Centos 7;在Centos 6上会遇到安装数据库问题,会折腾一下。)
一、安装Apache
1.安装Apache
yum install httpd
2.设置服务器开机自动启动Apache
systemctl enable httpd.service
若要验证是否自动启动可在重启服务器后在终端键入以下命令来检测Apache是否已经启动
systemctl is-enabled httpd.service
如果看到了enable这样的响应,则表示Apache已经启动成功
3.手动启动Apache
systemctl start httpd.service 在浏览器中输入IP地址即可验证是否启动成功
4.手动重启Apache
systemctl restart httpd.service
5.手动停止Apache
systemctl stop httpd.service
6.安装目录介绍
Apache默认将网站的根目录指向/var/www/html
默认的主配置文件/etc/httpd/conftpd.conf
配置存储在的/etc/httpd/conf.d/目录
7.开放80端口
CentOS升级到7之后,发现无法使用iptables控制Linuxs的端口,
google之后发现Centos 7使用firewalld代替了原来的iptables。
下面记录如何使用firewalld开放Linux端口:
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
重启防火墙
firewall-cmd --reload
查看状态
firewall-cmd --state
8.查看运行状态:
ps -ef|grep httpd
ss -nlp|grep 80
通过浏览器打开本地IP,查看是否可以访问。如果无法访问,关闭掉防火墙,再访问。
systemctl stop firewalld
出现了apache默认网页后,则安装成功。
二、安装php过程:
1.安装php
查看安装目录:
yum list php
安装php
yum install php.x86_64 -y
完成php安装。
2.安装php插件安装
yum install php-gd
yum install php-mysql
yum install php-mbstring
以上几个插件用于Mantis数据库等。
3.测试安装插件状态
进入/var/www/html,新建一个文件index.php
内容为:
重启httpd服务:
systemctl restart httpd
通过访问IP,打开此网页,查看相关插件是否安装成功。
三、安装mysql过程:
1.直接yum安装mysql-community-server
查看安装目录:
yum list mysql-community-server
安装mysql
yum install mysql-community-server -y
检查mysql
rpm -qa | grep mysql
2.下载安装包安装mysql-community-server
如何安装mysql-community-server,详细查看另外一篇文章《如何快速安装mysql-community-server》
四、安装Mantis并配置php
4.1. 安装mantisbt
4.1.1. 下载mantisbt
wget http://sourceforge.net/projects/mantisbt/files/mantis-stable/1.2.18/mantisbt-1.2.18.tar.gz
解压mantisbt的压缩包,执行命令
tar –zxvf mantisbt-1.2.18.tar.gz
4.1.2. 部署mantisbt
1.执行命令
mv ./mantisbt /var/www/html/
在/var/www/html/目录,创建index.php,修改里面代码:
<?php
header("location: http://<IP>/mantisbt/");
?>
4.1.3. 创建mantisbt的数据库
1.访问http://serverIP/mantisbt/index.php,自动跳转到http://serverIP/mantisbt/admin/install.php页面,在该页面建立mantisbt的数据库;
2.在以下页面,root的密码为“xx”,直接点击“INSTALL/update database”即可。
3.数据库创建成功,通过http://serverIP/phpmyadmin/,可查看bugtracker数据库的创建情况。
4.2. 配置mantisbt
4.2.1. 配置数据库连接
1.[root@localhost mantisbt]#
执行以下命令:
vi config_inc.php //修改数据库连接信息
<?php
$g_hostname = 'localhost';
$g_db_type = 'mysql';
$g_database_name = 'xx'; #填写设置的数据名称,与2.1.3章节中填写的Database Name一致
$g_db_username = 'xx'; #填写数据库用户名
$g_db_password = 'xx'; #填写数据库密码
?>
2.[root@localhost mantisbt]#
执行以下命令:
cp config_inc.php.sample config_inc.php
4.2.2. Mantisbt汉化
1.执行命令:
vi /opt/lampp/htdocs/mantisbt/config_defaults_inc.php
修改:$g_default_language, 将english 改为chinese_simplified
2.在个人资料内,点击:更改个人设置,选择界面语言:chinese_simplified
3.界面更新为中文版
4.2.3. 设置时区
1.执行命令:
vi /opt/lampp/htdocs/mantisbt/config_defaults_inc.php
修改为 $g_default_timezone = ‘Asia/Shanghai’;
2.在个人资料内,点击:更改个人设置,选择时区:shanghai
4.2.4. 配置mantis邮件
1.执行命令
vi /opt/lampp/htdocs/mantisbt/ config_inc.ini
修改邮件配置信息
#— Email Configuration —
$g_phpMailer_method = PHPMAILER_METHOD_SMTP; # or PHPMAILER_METHOD_SMTP, PHPMAILER_METHOD_SENDMAIL
$g_smtp_host = ‘smtp.ym.163.com’; # used with PHPMAILER_METHOD_SMTP
$g_smtp_username = ‘mantisbt.admin@xxx.com’; # used with PHPMAILER_METHOD_SMTP
$g_smtp_password = ‘xxxx’; # used with PHPMAILER_METHOD_SMTP
$g_administrator_email = ‘mantisbt.admin@xxx.com’;
$g_webmaster_email = ‘mantisbt.admin@xxx.com’;
$g_from_email = ‘mantisbt.admin@xxx.com’; # the "From: " field in emails
$g_return_path_email = ‘mantisbt.admin@xxx.com’; # the return address for bounced mail
#$g_from_name = ‘Mantis Bug Tracker’; #
#$g_email_receive_own = OFF;
#$g_email_send_using_cronjob = OFF;
测试新用户注册,给管理员发送邮件成功。
4.2.5. 登陆administrator账户
用户名:administrator
密码:root
至此,MantisBT的安装部署已经完成。
==========================================
其它设置:Mantis去掉登录界面的“注册一个新账号”链接
主界面提供了新账号注册功能,但是只能注册默认权限的帐号。不是很实用,那就干脆去掉吧。
(1) 打开Mantis目录下的login_page.php和lost_pwd_page.php;
(2) 查找print_signup_link()并将其注释掉;
(3) 重新打开Mantis,注册新帐号的链接就没有了。
单机创建用户密码
修改\xampp\htdocs\mantis\config_defaults_inc.php配置文件
找到 $g_send_reset_password
修改前:$g_send_reset_password = ON;
修改后: $g_send_reset_password = OFF;
===================================================================================
1、登录
默认用户名和密码:
administrator/root
用administrator 登陆后,可以直接修改administrator的密码。
在添加用户的时候,不把修改密码链接发到邮件,直接填密码:
# vi config_defaults_inc.php
把
$g_send_reset_password = ON;
改为
$g_send_reset_password = OFF;
2、警告的解决方法
警告1:
SYSTEM WARNING: ‘mysql_connect(): Headers and client library minor version mismatch. Headers:50550 Library:50638’ in ‘/var/www/html/mantis/library/adodb/drivers/adodb-mysql.inc.php’ line 365
数据库连接的问题,将adodb-mysql.inc.php文件的364、365行的mysql_connect前加上“@”符号。
修改之前
修改之后
警告2:
SYSTEM WARNING: ‘date_default_timezone_get(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone ‘UTC’ for now, but please set date.timezone to select your timezone.’ in ‘/var/www/html/mantis/core.php’ line 274
修改core.php文件的274行
将default_timezone改为date.timezone;
将date_default_timezone_get()改为date_default_timezone_set()
如下图
改完后,刷新浏览器即可。