Phabricator 是facebook开发的一套代码审核工具,基于PHP和Mysql开发。

准备工作:

系统:Linux CentOS7

环境:

  1. Apache(或nginx,或lighttpd):需要Apache 2.2.7以上版本。
  2. MySQL:MySQL必需
  3. PHP:需要PHP5.2以上版本
  4. Phabricator:phabricator安装包

安装

  • 修改ip地址(可忽略)

vi /etc/sysconfig/network-scripts/ifcfg-ethx

注:

1.进入network-scripts后自己看一下ifcfg-ethx的名称再进行修改

2.如果是虚拟机的linux最好把网络连接方式设为桥接模式

BOOTPROTO=static #选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址
IPADDR=192.168.116.5 #这个为静态IP地址
GATEWAY=192.168.116.1 #默认网关
NETMASK=255.255.255.0 #子网掩码
DNS1=218.85.157.99 #DNS配置
  • 安装Apache

关闭firewall:(关闭防火墙)

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

运行命令:yun install httpd

现在打开http://192.168.116.4地址,看看有没有Apache的默认页面出来了?如果有就对了。

  • 安装mysql

下载mysql的repo源

$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

安装mysql-community-release-el7-5.noarch.rpm包

$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

  1. 安装mysql

$ sudo yum install mysql-server

根据步骤安装就可以了,不过安装完成后,没有密码,需要重置密码。

  1. 重置密码重>置密码前,首先要登录

$ mysql -u root

登录时有可能报这样的错:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

'$ sudo chown -R openscanner:openscanner /var/lib/mysql'

然后,重启服务:

$ service mysqld restart

接下来登录重置密码:

$ mysql -u root

mysql > use mysql;mysql > update user set password=password(‘123456‘) where user=‘root‘;mysql > exit;

错误信息
  1. 错误信息:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    解决方法:打开/etc/my.cnf,看看里面配置的socket位置是什么目录。“socket=/var/lib/mysql/mysql.sock”

    路径和“/tmp/mysql.sock”不一致。建立一个软连接:ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
  • 安装PHP

yum install php php-devel

重启apache使php生效

/etc/init.d/httpd restart

此时可以在目录:/var/www/html/下建立一个index.hph文件

代码:

<?php phpinfo(); ?>

然后访问这个文件,就能看到PHP的一些信息,index.php

安装php的扩展(可不装)

yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

  • 安装Phabricator

#######把centos版的phabricator安装脚本下载到opt目录并安装

cd /opt

下载 https://secure.phabricator.com/source/phabricator/browse/master/scripts/install/ 页面的三个文件

install_rhel-derivs.sh:wget https://p.phcdn.net/file/data/@secure/q5leodur5raca77mplfy/PHID-FILE-3xzyr2upmwbslnms7lgb/install_rhel-derivs.sh

install_ubuntu.sh:wget https://p.phcdn.net/file/data/@secure/hoqul6hmowgimbo5oklh/PHID-FILE-jiplxc5x72gmpd3pqw2t/install_ubuntu.sh

update_phabricator.sh:wget https://p.phcdn.net/file/data/@secure/ajyfdzpe3ymmnm3imogd/PHID-FILE-kujsi3om7abpuc6frgzd/update_phabricator.sh

chmod 777 install_rhel-derivs.sh

./install_rhel-derivs.sh

#######安装必要插件

yum -y install pcre-devel

yum -y install php-pear

yum -y install pecl(发现不装这个也没事)

yum -y install apc(发现不装这个也没事)

#######把这些文件移动到apache的DocumentRoot下

mv /opt/arcanist /var/www/html

mv /opt/libphutil /var/www/html

mv /opt/phabricator /var/www/html

#######关门防火墙和selinux

/etc/init.d/iptables stop

setenforce 0

chkconfig iptables off

im /etc/selinux/config

This file controls the state of SELinux on the system.
SELINUX= can take one of these three values:
enforcing - SELinux security policy is enforced.
permissive - SELinux prints warnings instead of enforcing.
disabled - No SELinux policy is loaded.
SELINUX=disabled
SELINUXTYPE= can take one of these two values:
targeted - Targeted processes are protected,
mls - Multi Level Security protection.
SELINUXTYPE=targeted

#######修改vim /etc/httpd/conf/httpd.conf以下几点

#######设置DocumentRoot

DocumentRoot "/var/www/html/phabricator/webroot"

#######加入index.php

DirectoryIndex index.php index.html index.html.var
<VirtualHost *>
RewriteEngine on
RewriteRule ^/rsrc/(.*) - [L,QSA]
RewriteRule ^/favicon.ico - [L,QSA]
RewriteRule ^(.*)$ /index.php?__path__=$1 [B,L,QSA]
</VirtualHost>

#######启动必要的服务

service httpd restart

chkconfig httpd on

service mysqld restart

chkconfig httpd on

#######更新phabricator

cd /var/www/html/phabricator

./bin/storage upgrade

#######在浏览器中输入网址 192.168.*.* 即可。


  • 配置Phabricator

注:在配置svn的url获取时,svn的地址必须是原生的.这样才可以生成ssl证书

如:https://svn.qq.net:9443/svn/ProductCenter

此处必须是根目录

  • 开启LDAP权限

需要扩展LDAP PHP,使用命令

apt-get install php5-ldap



yum install php-ldap

然后安装完成后,要重启httpd就可以用了

service httpd restart


附件:源调整 接入阿里的源

  1. 备份

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

  1. 下载新的CentOS-Base.repo 到cd /etc/yum.repos.d/

CentOS 5

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo

CentOS 6

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

CentOS 7

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

  1. 之后运行yum makecache生成缓存

联系方式:505242941@qq.com

linux centos7 安装Phabircator的更多相关文章

  1. Linux CentOS7 安装 Qt 5.9.2

    Linux CentOS7 安装 Qt 5.9.2 参考链接 http://doc.qt.io/qt-5/linux.html sudo yum groupinstall "C Develo ...

  2. LINUX CentOS7安装字体库

    LINUX CentOS7安装字体库 2017年12月26日 17:06:07 q260996583 阅读数:4866更多 个人分类: linux   JAVA画图时常用到Font 类对象 这样的对象 ...

  3. Linux centos7安装Mongodb

    Linux centos7安装Mongodb-4.0 1.下载 官方下载地址:https://www.mongodb.com/download-center/community 2.上传解压 1)rz ...

  4. linux(centos7) 安装nginx

    linux(centos7) 安装nginx 1.14(stable) 版本 Nginx配置文件常见结构的从外到内依次是「http」「server」「location」等等,缺省的继承关系是从外到内, ...

  5. linux centos7 安装常用软件java,node,mysql,Seafile

    linux centos7 安装常用软件java,node,mysql,Seafile 安装压缩解压缩软件 yum install -y unzip zip 安装git yum install -y ...

  6. 【PHP7.1】linux centos7 安装phpredis扩展

    背景: linux  centos7.4  php7.1 一 . 安装redis 1 进入usr/local  目录 cd /usr/local 2  下载redis  并解压到当前目录 wget h ...

  7. linux centos7 安装mysql-5.7.17教程(图解)

    1系统约定安装文件下载目录:/data/softwareMysql目录安装位置:/usr/local/mysql数据库保存位置:/data/mysql日志保存位置:/data/log/mysql 2下 ...

  8. window和linux(centos7)安装mysql5.7

    window mysql 安装步骤 社区版本下载地址: https://dev.mysql.com/downloads/file/?id=474802 下载完成后,得到mysql-installer- ...

  9. Linux(CentOS7)安装Tomcat (Tomcat+JDK)

    安装Tomcat首先要安装jdk,jdk和tomcat安装可以使用的方法:将jdk.tomcat上传到Linux,然后解压后使用,另一种方法是直接使用在线安装:yum 第一步:安装jdk,在Linux ...

随机推荐

  1. python3用pygame实现播放音乐文件

    import pygameimport time #导入音乐文件file = r'C:\1.wav'pygame.mixer.init()track = pygame.mixer.music.load ...

  2. 网云穿-SpringBoot项目映射外网

    网云穿-最简单易用的内网穿透软件,最简洁教程一键穿透网站.数据库.远程桌面 网云穿,致力于打造最便捷的「内网穿透」应用 https://xiaomy.net/index.html  网云穿是一款可以在 ...

  3. 每天一个linux命令:tail(16)

    tail tail命令用于输入文件中的尾部内容,不指定文件时,作为输入信息进行处理.tail命令默认在屏幕上显示指定文件的末尾10行.命令从指定点开始将文件写到标准输出,使用tail命令的-f选项可以 ...

  4. 输入流之顶层抽象InputStream

    该类是所有二进制输入流的的抽象父类 类中主要方法解释说明如下 (1)public abstract int read() throws IOException; 该方法是从输入流中读取下一个字节,返回 ...

  5. 4412 4路pwm输出

    一.4412 xpwmTOUT1 这是4412的GPD0_1路,itop中被使用为LCD的背光电路的pwm功能.因此如果使用教程中的代码,同样操作GPD0_1是行不通的. 会出现错误,所以需要解除在内 ...

  6. 数据挖掘:周期性分析SMCA算法

    数据挖掘:周期性分析SMCA算法 原文地址:http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1423978 算法介绍 以时间顺序挖掘周期性的模式 ...

  7. 【HDOJ6595】Everything Is Generated In Equal Probability(期望DP)

    题意:给定一个N,随机从[1,N]里产生一个n, 然后随机产生一个n个数的全排列,求出n的逆序数对的数量并累加ans, 然后随机地取出这个全排列中的一个子序列,重复这个过程,直到为空,求ans在模99 ...

  8. Redis的高级特性一览

    更多内容,欢迎关注微信公众号:全菜工程师小辉.公众号回复关键词,领取免费学习资料. 应用场景 缓存系统:用于缓解数据库的高并发压力 计数器:使用Redis原子操作,用于社交网络的转发数,评论数,粉丝数 ...

  9. VMware中对Linux虚拟机的网络配置静态IP的配置

    前言 踏出象牙塔,进入公司,由于公司的所有产品都是Linux下的,必然自己这段时间需要在自己的工作机器先学习一下.项目代码是用Source Insight进行查看的,总是Ctrl + Alt的切来切去 ...

  10. 用 Flask 来写个轻博客 (23) — 应用 OAuth 来实现 Facebook 第三方登录

    目录 目录 前文列表 扩展阅读 第三方登录流程 OAuth 应用 OAuth 实现 Facebook 第三方登录 实现效果 前文列表 用 Flask 来写个轻博客 (1) - 创建项目 用 Flask ...