CentOS安装ReviewBoard记录

一、安装Apache

  1. #yum install httpd
  2. #service httpd start (开机自启动httpd) 
    (CentOS7以下版本使用:chkconfig httpd on)

  3. #yum install mod_wsgi(python网关接口模块) 
    如果安装好的mod_wsgi后,有/etc/httpd/conf.d/wsgi.conf文件,就不需要做额外配置; 
    否则需要在/etc/httpd/conf/httpd.conf中插入 
    LoadModule wsgi_module modules/mod_wsgi.so

  4. 如果使用虚拟主机多端口映射,则 
    (1)新建/etc/httpd/conf.d/vhost.conf文件,以添加81端口为例,其内容示例如下:

<VirtualHost *:80>
  ServerName localhost
  DocumentRoot /var/www/test80/  #/var/www/html为httpd.conf配置的根目录,站点目录只能在这个目录下面
</VirtualHost>
<Directory /var/www/test80/>
       Require all granted
</Directory>
<VirtualHost *:81>
  ServerName localhost
  DocumentRoot /var/www/test81/
</VirtualHost>
<Directory /var/www/test81/>
    Require all granted
</Directory>

(2)因为增加了81端口,所以需要在/etc/httpd/conf/httpd.conf文件中,找到Listen 80(默认监听80)代码,增加一行 
Listen 81

(3)在某些CentOS版本中,添加监听端口,还需要让Selinux放行,所以需要执行 
#semanage port -l|grep http #查看SELinux下http相关端口 
#semanage port -a -t http_port_t -p tcp 81 #增加这个非标准端口即可

(4)#service httpd restart(重启,访问localhost、localhost:81验证结果)

二、安装MySQL

  1. #yum install mysql mysql-devel mysql-server 
    (mysql:mysql客户端,mysql-devel:mysql开发库,mysql-server:mysql服务端)或 
    #yum install mariadb mariadb-devel mariadb-server 
    (mariadb是mysql增强替换品,目前mysql-server已不能正常yum install,可以使用mariadb-server代替)

  2. #systemctl enable mysqld.service(或mariadb.service)(开机自启动mysql或mariadb)

  3. #service mysqld(mariadb) start(启动服务) 
    #/usr/bin/mysql -uroot -p ( 验证安装结果,初始root密码为空)

三、安装Python

  1. #yum install python-setuptools(easy_install简易Python安装工具)
  2. #yum install python-devel (Python开发库)

四、安装Reviewboard所需依赖

  1. #yum install memcached
  2. #yum install python-memcached
  3. #yum install patch
  4. #yum install zlib-devel
  5. yum install libjpeg-turbo-devel
  6. #easy_install mysql-python
  7. #easy_install pip(如果没有pip命令,则需要执行此步)
  8. #pip install --upgrade six(升级python的six模块,后面部署Reviewbaord站点的时候需要)
  9. #easy_install MySQL-python

五、安装Reviewboard

#easy_install ReviewBoard

六、安装SVN及拓展

1. yum install subversion subversion-devel

2. 安装pysvn:

方案A:如果python版本为2.6(CentOS6.x),可以采用其他EPEL yum源进行下载

(1)rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm 
(安装yum源EPEL红帽企业库,centos默认yum源库中没有pysvn) 
(2) yum --enablerepo=epel install pysvn 
(指定在EPEL yum源中,下载pysvn)

方案B:如果python版本为2.6以上(CentOS7.x),要单独下载pysvn包进行编译安装

(1)安装gcc-g++编译器 
yum install gcc-c++ 
(2)编译pysvn 
#cd /home 
#wget http://tigris.org/files/documents/1233/49424/pysvn-1.7.10.tar.gz 
(选择自身svn和python版本的包) 
#wget http://iweb.dl.sourceforge.net/project/cxx/CXX/PyCXX%20V6.2.6/pycxx-6.2.6.tar.gz (pysvn依赖包) 
#tar -xvf pysvn-1.7.10.tar.gz 
#cd /pysvn-1.7.10/Source 
#tar -xvf pycxx-6.2.6.tar.gz 
#python setup.py configure 
#make 
#cd /Tests 
#make 
(3)拷贝pysvn的编译结果到python库中 
#mkdir /usr/lib/python2.7/site-packages/pysvn 
#cp /home/pysvn-1.7.10/Source/pysvn/__init__.py python-libdir/site-packages/pysvn 
#cp /home/pysvn-1.7.10/Source/pysvn/_pysvn2.7.so python-libdir/site-packages/pysvn

七、部署Reviewboard

1. 绑定数据库

mysql> CREATE DATABASE reviewboard CHARACTER SET utf8; 
mysql> CREATE USER 'reviewboard'@'localhost' IDENTIFIED BY '123456'; 
mysql> GRANT ALL PRIVILEGES ON reviewboard.* to 'reviewboard'@'localhost';

2. 部署reviewboard

(1)#rb-site intall /var/www/html/reviews (reviews是自定义的) 
(2)#cp /var/www/html/reviews/conf/apache-wsgi.conf /etc/httpd/conf.d/reviews.conf 
(reviews.conf是自定义的) 
(3)#chmod -R 777 /var/www/ (直接全开权限,懒)

3. 部署后调试访问

访问localhost,可能会出现Reviewboard is taking a nap的页面,此时就需要修改/var/www/html/reviews/conf/setting_locale.py 里面的Debug 为 True。再进行访问,就可以把根据error信息查出问题在哪里,本人部署过程中,出现过以下问题:

  1. 依赖失效 
    Target WSGI script '/var/www/html/reviews/htdocs/reviewboard.wsgi' cannot be loaded as Python module 
    .... 
    DistributionNotFound: Whoosh>=2.6 


    原因:Whoosh版本过高,类似依赖问题都是这样,提示DistributionNotFound:xxx,解决方案都一样 
    解决方法: 
    #pip uninstall Whoosh 
    #pip install Whoosh==2.6.0

  2. 权限控制 
    如果系统中有selinux或防火墙开启,则需要 
    #setenforce 0(调整selinux为permissitive模式放行站点权限) 
    #service firewalled stop (关闭防火墙)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值