Changeset View
Changeset View
Standalone View
Standalone View
src/docs/user/installation_guide.diviner
| Show First 20 Lines • Show All 58 Lines • ▼ Show 20 Lines | |||||
| Beyond an operating system, you will need **a webserver**. | Beyond an operating system, you will need **a webserver**. | ||||
| - **Apache**: Many installs use Apache + `mod_php`. | - **Apache**: Many installs use Apache + `mod_php`. | ||||
| - **nginx**: Many installs use nginx + `php-fpm`. | - **nginx**: Many installs use nginx + `php-fpm`. | ||||
| - **lighttpd**: `lighttpd` is less popular than Apache or nginx, but it | - **lighttpd**: `lighttpd` is less popular than Apache or nginx, but it | ||||
| works fine. | works fine. | ||||
| - **Other**: Other webservers which can run PHP are also likely to work fine, | - **Other**: Other webservers which can run PHP are also likely to work fine, | ||||
| although these installation instructions will not cover how to set them up. | although these installation instructions will not cover how to set them up. | ||||
| - **PHP Builtin Server**: You can use the builtin PHP webserver for | - **PHP Builtin Server**: Phabricator will not work with the builtin | ||||
| development or testing, although it should not be used in production. | webserver because Phabricator depends on making requests to itself on some | ||||
| workflows, and the builtin webserver is single-threaded. | |||||
| You will also need: | You will also need: | ||||
| - **MySQL**: You need MySQL. We strongly recommend MySQL 5.5 or newer. | - **MySQL**: You need MySQL. We strongly recommend MySQL 5.5 or newer. | ||||
| - **PHP**: You need PHP 5.2 or newer. | - **PHP**: You need PHP 5.5 or newer. | ||||
| You'll probably also need a **domain name**. In particular, you should read this | You'll probably also need a **domain name**. In particular, you should read this | ||||
| note: | note: | ||||
| NOTE: Phabricator must be installed on an entire domain. You can not install it | NOTE: Phabricator must be installed on an entire domain. You can not install it | ||||
| to a path on an existing domain, like `example.com/phabricator/`. Instead, | to a path on an existing domain, like `example.com/phabricator/`. Instead, | ||||
| install it to an entire domain or subdomain, like `phabricator.example.com`. | install it to an entire domain or subdomain, like `phabricator.example.com`. | ||||
| Show All 37 Lines | |||||
| Otherwise, here's a general description of what you need to install: | Otherwise, here's a general description of what you need to install: | ||||
| - git (usually called "git" in package management systems) | - git (usually called "git" in package management systems) | ||||
| - Apache (usually "httpd" or "apache2") (or nginx) | - Apache (usually "httpd" or "apache2") (or nginx) | ||||
| - MySQL Server (usually "mysqld" or "mysql-server") | - MySQL Server (usually "mysqld" or "mysql-server") | ||||
| - PHP (usually "php") | - PHP (usually "php") | ||||
| - Required PHP extensions: mbstring, iconv, mysql (or mysqli), curl, pcntl | - Required PHP extensions: mbstring, iconv, mysql (or mysqli), curl, pcntl | ||||
| (these might be something like "php-mysql" or "php5-mysqlnd") | (these might be something like "php-mysql" or "php5-mysqlnd") | ||||
| - Optional PHP extensions: gd, apc (special instructions for APC are available | - Optional PHP extensions: gd | ||||
| below if you have difficulty installing it), xhprof (instructions below, | |||||
| you only need this if you are developing Phabricator) | |||||
| If you already have LAMP setup, you've probably already got everything you need. | If you already have LAMP setup, you've probably already got everything you need. | ||||
| It may also be helpful to refer to the install scripts above, even if they don't | It may also be helpful to refer to the install scripts above, even if they don't | ||||
| work for your system. | work for your system. | ||||
| Now that you have all that stuff installed, grab Phabricator and its | Now that you have all that stuff installed, grab Phabricator and its | ||||
| dependencies: | dependencies: | ||||
| $ cd somewhere/ # pick some install directory | $ cd somewhere/ # pick some install directory | ||||
| somewhere/ $ git clone https://github.com/phacility/libphutil.git | |||||
| somewhere/ $ git clone https://github.com/phacility/arcanist.git | somewhere/ $ git clone https://github.com/phacility/arcanist.git | ||||
| somewhere/ $ git clone https://github.com/phacility/phabricator.git | somewhere/ $ git clone https://github.com/phacility/phabricator.git | ||||
| = Installing APC (Optional) = | Next Steps | ||||
| ========== | |||||
| Like everything else written in PHP, Phabricator will run much faster with APC | |||||
| installed. You likely need to install "pcre-devel" first: | |||||
| sudo yum install pcre-devel | |||||
| Then you have two options. Either install via PECL (try this first): | |||||
| sudo yum install php-pear | |||||
| sudo pecl install apc | |||||
| **If that doesn't work**, grab the package from PECL directly and follow the | |||||
| build instructions there: | |||||
| http://pecl.php.net/package/APC | |||||
| Installing APC is optional but **strongly recommended**, especially on | |||||
| production hosts. | |||||
| Once APC is installed, test that it is available by running: | |||||
| php -i | grep apc | |||||
| If it doesn't show up, add: | |||||
| extension=apc.so | |||||
| ..to "/etc/php.d/apc.ini" or the "php.ini" file indicated by "php -i". | |||||
| = Next Steps = | |||||
| Continue by: | Continue by: | ||||
| - configuring Phabricator with the @{article:Configuration Guide}; or | - configuring Phabricator with the @{article:Configuration Guide}; or | ||||
| - learning how to keep Phabricator up to date with | - learning how to keep Phabricator up to date with | ||||
| @{article:Upgrading Phabricator}. | @{article:Upgrading Phabricator}. | ||||