部署bugzilla(bugzilla+apache+mysql+linux)
工作原因,需要部署bugzilla。在此,容我新造个轮子。官方轮子:https://bugzilla.readthedocs.org/en/latest/installing/quick-start.html
一、准备工作
所需文件:
bugzilla 版本bugzilla-5.0.2,传送门:https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.2.tar.gz
bugzilla模块依赖(非必要,如果gd模块不成功,需手动安装)
gd 版本gd-2.0.28,传送门:http://www.boutell.com/gd/http/gd-2.0.28.tar.gz
apache 版本apache-2.4.18,传送门:http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.18.tar.gz
版本2.2的话在httpd.conf时会有区别
apache依赖
apr 版本apr-1.5.2,传送门:http://www.apache.org/dist/apr/apr-1.5.2.tar.gz
apr-util 版本apr-util-1.5.4,传送门:http://mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.gz
pcre 版本pcre-8.37,传送门:http://nchc.dl.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
mysql 版本mysql-5.1.62-linux-x86_64-glibc23,传送门:http://cdn.mysql.com/archives/mysql-5.1/mysql-5.1.62-linux-x86_64-glibc23.tar.gz(如果已有mysql,无需安装,支持任何版本mysql)
二、安装apache
1.安装依赖包
(1)apr
解压apr-1.5.2.tar.gz,进入到apr-1.5.2目录下,执行
./configure
make
make install
(2)apr-util
解压apr-util-1.5.4.tar.gz,进入到apr-util-1.5.4目录下,执行
./configure --with-apr=/usr/local/apr
make
make install
(3)pcre
解压pcre-8.37.tar.gz,进入到pcre-8.37目录下,执行
apt-get install build-essential
./configure
make
make install
2.安装apache
解压httpd-2.4.18.tar.gz,进入到httpd-2.4.18目录下,执行
./configure --enable-mods-shared=all
make
make install
修改配置文件
编辑/usr/local/apache2/conf/httpd.conf
修改ServerName,改成ip或域名
启动
/usr/local/apache2/bin/apachectl -k start
这里可能会出现error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory这样的错误,解决方法是:
# ln -s /usr/local/lib/libpcre.so.1 /lib
apache默认使用80端口。如过过程中出现端口被占用,在linux下执行sudo lsof -i:80 查看占用80端口进程,杀死对应进程kill pid or kill -9 pid
验证
打开浏览器,输入http://localhost,出现It works! 安装成功
如果出现问题,很有可能是linux下权限问题。为此,新建apache组和用户
sudo groupadd apache
sudo useradd -r -g apache apache
修改目录权限:
cd /usr/local/apache2
sudo chown -R apache:apache ./
三、安装mysql
解压mysql-5.1.62-linux-x86_64-glibc23.tar.gz,复制
sudo cp mysql-5.1.62-linux-x86_64-glibc23 /usr/local/mysql -r
添加系统mysql组和mysql用户:
sudo groupadd mysql
sudo useradd -r -g mysql mysql
进入mysql目录:
cd /usr/local/mysql
修改目录权限:
sudo chown -R mysql:mysql ./
安装数据库:
./scripts/mysql_install_db --user=mysql --datadir=
/usr/local/mysql/data
加入到服务中
sudo cp support-files/mysql.server /etc/init.d/mysql
启动mysql
sudo service mysql start
设置密码
sudo /usr/local/mysql/bin/mysqladmin -u root password '密码'
把mysql客户端放到默认路径:
sudo ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
修改编码格式
找到mysql配置文件模板复制到/etc下
sudo cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf
编辑my.cnf
在[client]节点下加入
default-character-set = utf8
在[mysqld]节点下加入
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci
之后为bugzilla创建一个数据库。bugzilla默认使用的数据库名位bugs,用户名为bugs,密码为空。但建议修改。
进入到数据库
mysql -uroot -p
输入你修改后的密码
创建数据库
create database bugs;
创建用户
GRANT ALL PRIVILEGES ON bugs.* TO bugs@localhost IDENTIFIED BY 'bugs数据库的密码'; 如果选择远程数据库,修改localhost
刷新
flush privileges;
至此,mysql配置完成
四、安装bugzilla
1.解压bugzilla-5.0.2.tar.gz,将bugzilla-5.0.2复制到/var/www下
sudo cp bugzilla-5.0.2 /var/www/bugzilla -r
进入到bugzilla目录下
cd /var/www/bugizlla
检查模块
sudo ./checksetup.pl --check-modules
安装模块,需要联网(此过程需要很久)。未联网请下载对应包手动安装。
sudo perl install-module.pl --all
安装bugzilla
sudo ./checksetup.pl
如果出现错误 很有可能是gd模块出问题了。我出问题的地方就是这里,需手动安装
解压gd-2.0.28.tar.gz,进入到gd-2.0.28目录
./configure
make
make install
再次回到bugzilla目录下执行
sudo ./checksetup.pl
User apache
Group apache
注释掉原DocumentRoot
<Directory "/var/www/bugzilla">
AddHandler cgi-script .cgi .pl
Options +ExecCGI +Indexes
DirectoryIndex index.cgi
AllowOverride All
Require all granted
</Directory>
cd /httpd src path/modules/generators
sudo /usr/local/apache2/bin/apxs -i -a -c mod_cgi.c
部署bugzilla(bugzilla+apache+mysql+linux)的更多相关文章
- mac osx 上面部署Django项目 apache+mysql+mod_wsgi
1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...
- CentOS6系统编译部署LAMP(Linux, Apache, MySQL, PHP)环境
我们一般常规的在Linux服务器中配置WEB系统会用到哪种WEB引擎呢?Apache还是比较常用的引擎之一.所以,我们在服务器中配置LAMP(Linux, Apache, MySQL, PHP)是我们 ...
- Linux Ubuntu 14.04安装LAMP(Apache+MySQL+PHP)网站环境
从虚拟主机到VPS/服务器的过度,对于普通的非技术型的站长用户来说可能稍许有一些困难,麦子建议我们如果能够在虚拟主机环境中满足建站需要的, 还是用虚拟主机比较好.除非我们真的有需要或者希望从虚拟主机过 ...
- Linux服务器部署系列之一—Apache篇(下)
接上篇 linux服务器部署系列之一—Apache篇(上) 四.管理日志文件 Apache日志分为访问日志和错误日志两种: 1)访问日志 用于记录客户端的访问信息,文件名默认为access_lo ...
- Linux服务器部署系列之二—MySQL篇
MySQL是linux环境中使用最广泛的数据库之一,著名的“LAMP黄金组合”就要用到MySQL.关于MySQL的优点及作用,我就不多讲了,网上很多这样的文章. 今天我们要谈的是MySQL服务器的部署 ...
- 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)
阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...
- 转 整理 Linux服务器部署系列之一—Apache篇
花了差不多一天,参考了几个博客,终于初步配成功了 Apache,先总结一下: 如果apache安装成为linux的服务的话,可以用以下命令操作: service httpd start 启动 serv ...
- 【Linux】Debian 下安装 Apache,MySQL,PHP
首先,对你的源进行更新: $ sudo apt-get update 第一步--安装 Apache Apache 是一个开源软件,它目前运行在全球超过 50% 的服务器上,是 LAMP(Linux,A ...
- CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境
一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代 ...
随机推荐
- 实现日、周、月排行统计 sql
在如今很多系统中,都需要进行日.周.月排行统计,但是在网上寻找 了一番,发现很多都是相对的周.月排行,即周排行则用当前时间减去7天.这样我个人认为并不恰当.如月排行中,假设今天是4月22日,则从3月2 ...
- mysql导出整个数据库
mysql导出整个数据库 mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql mysqldump - ...
- karaf增加自己定义log4j的配置
配置文件: karaf_home/etc/org.ops4j.pax.logging.cfg 增加配置: ### direct log messages to stdout ### log4j.app ...
- [翻译角]Headline English: A Captain Should Be Pitch Perfect at a Multitude of Skills (ESLPOD Blog)
以下转自www.eslpod.com,翻译为本人添加.其余版权均归原网站所有. ESLPOD是一个英语学习网站,我最初知道这个网站,是因为“奶爸”<把你的英语用起来>(电子版3元)一书的推 ...
- iOS开发——高级篇——线程同步、线程依赖、线程组
前言 对于iOS开发中的网络请求模块,AFNet的使用应该是最熟悉不过了,但你是否把握了网络请求正确的完成时机?本篇文章涉及线程同步.线程依赖.线程组等专用名词的含义,若对上述名词认识模糊,可先进行查 ...
- js 获取函数的所有参数名
具体思路: 利用Function.toString()方法,获取到函数的源码,再利用正则匹配获取到参数名字. 实现代码(代码基于ES6): // 获取函数的参数名 function getParame ...
- Bootstrap 过渡效果 transition.js源码分析
前言: 阅读建议:去github下载一个完整dom然后把,本篇代码复制进去然后运行就好了以地址 Bootstrap 自带的 JavaScript 插件的动画效果几乎都是使用 CSS 过渡实现的,那么判 ...
- go4--break,continue + 标签
package main /* 指针 Go虽然保留了指针,但与其它编程语言不同的是,在Go当中不 支持指针运算以及”->”运算符,而直接采用”.”选择符来操作指针 目标对象的成员 操作符”&am ...
- [翻译]NUnit---Equality Asserts&& Identity Asserts (四)
Equality Asserts 这些方法测试两个参数是否相等.语言不自动装修的普通类型可以使用对应的重载的方法. Comparing Numerics of Different Types 比较两个 ...
- luence全文检索(数据库检索)
注解:从数据库中查询所有数据然后放入luence中,然后在luence来检索 package com.zhu.demo; import java.io.IOException; import java ...