Install Phabricator
=================
# XXX use Debian Buster

http://phabricator.org/
https://secure.phabricator.com/book/phabricator/article/installation_guide/This script has some ideas as to what needs to be done:
http://www.phabricator.com/rsrc/install/install_ubuntu.sh

sudo su -

apt-get update
apt-get install mariadb-client apache2 dpkg-dev php php-mysql php-gd php-dev php-curl php-cli php-json
#php-apc
a2enmod rewrite
XXX
cd /var/www
git clone https://github.com/phacility/libphutil.git
git clone https://github.com/phacility/arcanist.git
git clone https://github.com/phacility/phabricator.git

Docs
http://www.phabricator.com/docs/phabricator/article/Configuration_Guide.html

rm /etc/apache2/sites-enabled/000-default.conf
cd /etc/apache2/sites-available

vim phabricator.confAdd:
------------
vim phabricator.conf
<VirtualHost 0.0.0.0:443>
ServerName code.alephobjects.com
ServerAdmin webmaster@alephobjects.com
Change this to the path where you put 'phabricator' when you checked itout from GitHub when following the Installation Guide. #Make sure you include "/webroot" at the end!
DocumentRoot /var/www/phabricator/webroot
RewriteEngine on
RewriteRule ^/rsrc/(.*) - [L,QSA]
RewriteRule ^/favicon.ico - [L,QSA]
RewriteRule ^(.*)$ /index.php?__path__=$1 [B,L,QSA]ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combinedSSLEngine on

SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdownLimitRequestBody 33554432</VirtualHost>
<Directory "/var/www/phabricator/webroot">
Require all granted
</Directory>
------------

vim 000-default.conf
<VirtualHost *:80>

ServerAdmin webmaster@alephobjects.com#redirect all http requests to https
    Redirect permanent / https://code.alephobjects.com/ErrorLog ${APACHE_LOG_DIR}/error.logPossible values include: debug, info, notice, warn, error, crit,alert, emerg.

LogLevel debugCustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>


---


cd /etc/apache2/sites-enabled
ln -s ../sites-available/phabricator.conf .
/etc/init.d/apache2 restart


##############################
Set up Database

# XXX phabricator user uses many databases in MySQL
# MySQL phabricator user has super privs

Log into db server.

CREATE DATABASE aophabricator;
CREATE USER 'aophabricator'@'10.43.1.215' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON aophabricator.* TO 'aophabricator'@'10.43.1.215';
FLUSH PRIVILEGES;

