summaryrefslogtreecommitdiff
path: root/PhpCompatibilityNotes.md
blob: 8f72dca266b2b58a6fcf6ab1d5243fe76b8f000b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# PHP requirements

You will need PHP 5.4 (or newer, PHP 7 is fine) compiled with the following modules (those
are actually very common and should be available in any reasonable Linux distro):

-   PDO with support for PostgreSQL or MySQL depending on the database server used - some distributions need both PDO and database-specific packages, i.e. php-pgsql
-   JSON
-   XML (DOMDocument, DOMXpath)
-   mbstring
-   fileinfo
-   PHP CLI binary (needed to run update daemon and other command line tools)

### Not required, but recommended

-   CURL (highly recommended, just install it) **OR** support for remote fopen()
-   POSIX functions (for the multiprocess update daemon, otherwise not needed)
-   GD (needed for OTP and some plugins)
-   Some kind of opcode cache/accelerator (depends on PHP version: php5-apc, php7-opcache, etc)

### Notes

* If your PHP install is missing any of the required modules tt-rss should notify you on startup.
* Plugins may have additional dependencies i.e. several bundled plugins require CURL.
* **PHP safe mode is not supported.**

### Debian 9 example

<code>
$ sudo apt install php7.0-cli php7.0-curl php7.0-mbstring php7.0-json php7.0-gd php7.0-pgsql php7.0-xml php7.0-opcache
</code>

If you're starting from scratch you will also likely need several other packages, including httpd (e.g. nginx) and FPM.