aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2017-08-21 12:29:12 +0200
committerGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2017-08-21 12:29:12 +0200
commita72ad940dff289f101be5bde60f85c18057fdb7a (patch)
tree8b07e26a943bae0ef52adf806a5b710c39d53fcb
parent3108b2729f79ccaf5f8ba951a52ee35d28e2adb2 (diff)
Increase minimal support to PHP 5.3.8+
https://github.com/FreshRSS/FreshRSS/issues/1604
-rw-r--r--CHANGELOG.md2
-rw-r--r--README.fr.md4
-rw-r--r--README.md4
-rw-r--r--app/install.php2
-rw-r--r--app/views/update/checkInstall.phtml2
-rw-r--r--docs/en/users/01_Installation.md7
-rw-r--r--docs/fr/users/01_Installation.md7
-rw-r--r--lib/lib_install.php2
-rw-r--r--lib/lib_rss.php6
9 files changed, 18 insertions, 18 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 07aa74848..5f5a974ac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,8 @@
## 2017-XX-XX FreshRSS 1.7.1-dev
+* Compatibility:
+ * Minimal PHP version increased to PHP 5.3.8+ to fix sanitize bug [#1604](https://github.com/FreshRSS/FreshRSS/issues/1604)
* UI
* New page for subscription tools [#1534](https://github.com/FreshRSS/FreshRSS/issues/1354)
* Adjustments to the padding of the tree of categories and feeds [1589](https://github.com/FreshRSS/FreshRSS/pull/1589)
diff --git a/README.fr.md b/README.fr.md
index 18ac54d96..cc268dc5e 100644
--- a/README.fr.md
+++ b/README.fr.md
@@ -32,7 +32,7 @@ Nous sommes une communauté amicale.
* Serveur modeste, par exemple sous Linux ou Windows
* Fonctionne même sur un Raspberry Pi 1 avec des temps de réponse < 1s (testé sur 150 flux, 22k articles)
* Serveur Web Apache2 (recommandé), ou nginx, lighttpd (non testé sur les autres)
-* PHP 5.3.3+ (PHP 5.4+ recommandé, et PHP 5.5+ pour les performances, et PHP 7+ pour d’encore meilleures performances)
+* PHP 5.3.8+ (PHP 5.4+ recommandé, et PHP 5.5+ pour les performances, et PHP 7+ pour d’encore meilleures performances)
* Requis : [cURL](http://php.net/curl), [DOM](http://php.net/dom), [XML](http://php.net/xml), [session](http://php.net/session), [ctype](http://php.net/ctype), et [PDO_MySQL](http://php.net/pdo-mysql) ou [PDO_SQLite](http://php.net/pdo-sqlite) ou [PDO_PGSQL](http://php.net/pdo-pgsql)
* Recommandés : [JSON](http://php.net/json), [GMP](http://php.net/gmp) (pour accès API sur plateformes < 64 bits), [IDN](http://php.net/intl.idn) (pour les noms de domaines internationalisés), [mbstring](http://php.net/mbstring) et/ou [iconv](http://php.net/iconv) (pour conversion d’encodages), [ZIP](http://php.net/zip) (pour import/export), [zlib](http://php.net/zlib) (pour les flux compressés)
* MySQL 5.5.3+ (recommandé), ou SQLite 3.7.4+, ou PostgreSQL 9.2+
@@ -107,7 +107,7 @@ sudo chown -R :www-data . && sudo chmod -R g+r . && sudo chmod -R g+w ./data/
## Contrôle d’accès
Il est requis pour le mode multi-utilisateur, et recommandé dans tous les cas, de limiter l’accès à votre FreshRSS. Au choix :
-* En utilisant l’identification par formulaire (requiert JavaScript, et PHP 5.3.7+ recommandé – fonctionne avec certaines versions de PHP 5.3.3+)
+* En utilisant l’identification par formulaire (requiert JavaScript, et PHP 5.5+ recommandé)
* En utilisant un contrôle d’accès HTTP défini par votre serveur Web
* Voir par exemple la [documentation d’Apache sur l’authentification](http://httpd.apache.org/docs/trunk/howto/auth.html)
* Créer dans ce cas un fichier `./p/i/.htaccess` avec un fichier `.htpasswd` correspondant.
diff --git a/README.md b/README.md
index 6246105bb..8595a26ec 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@ We are a friendly community.
* Light server running Linux or Windows
* It even works on Raspberry Pi 1 with response time under a second (tested with 150 feeds, 22k articles)
* A web server: Apache2 (recommended), nginx, lighttpd (not tested on others)
-* PHP 5.3.3+ (PHP 5.4+ recommended, and PHP 5.5+ for performance, and PHP 7 for even higher performance)
+* PHP 5.3.8+ (PHP 5.4+ recommended, and PHP 5.5+ for performance, and PHP 7 for even higher performance)
* Required extensions: [cURL](http://php.net/curl), [DOM](http://php.net/dom), [XML](http://php.net/xml), [session](http://php.net/session), [ctype](http://php.net/ctype), and [PDO_MySQL](http://php.net/pdo-mysql) or [PDO_SQLite](http://php.net/pdo-sqlite) or [PDO_PGSQL](http://php.net/pdo-pgsql)
* Recommended extensions: [JSON](http://php.net/json), [GMP](http://php.net/gmp) (for API access on platforms < 64 bits), [IDN](http://php.net/intl.idn) (for Internationalized Domain Names), [mbstring](http://php.net/mbstring) and/or [iconv](http://php.net/iconv) (for charset conversion), [ZIP](http://php.net/zip) (for import/export), [zlib](http://php.net/zlib) (for compressed feeds)
* MySQL 5.5.3+ (recommended), or SQLite 3.7.4+, or PostgreSQL 9.2+
@@ -109,7 +109,7 @@ See more commands and git commands in the [Command-Line Interface documentation]
## Access control
It is needed for the multi-user mode to limit access to FreshRSS. You can:
-* use form authentication (need JavaScript and PHP 5.3.7+, works with some PHP 5.3.3+)
+* use form authentication (needs JavaScript, and PHP 5.5+ recommended)
* use HTTP authentication supported by your web server
* See [Apache documentation](http://httpd.apache.org/docs/trunk/howto/auth.html)
* In that case, create a `./p/i/.htaccess` file with a matching `.htpasswd` file.
diff --git a/app/install.php b/app/install.php
index cd276bb7b..e77eaa6a5 100644
--- a/app/install.php
+++ b/app/install.php
@@ -410,7 +410,7 @@ function printStep1() {
<?php if ($res['php'] == 'ok') { ?>
<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.php.ok', PHP_VERSION); ?></p>
<?php } else { ?>
- <p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.php.nok', PHP_VERSION, '5.3.3'); ?></p>
+ <p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.php.nok', PHP_VERSION, '5.3.8'); ?></p>
<?php } ?>
<?php if ($res['minz'] == 'ok') { ?>
diff --git a/app/views/update/checkInstall.phtml b/app/views/update/checkInstall.phtml
index 543ab43de..33d78cbe7 100644
--- a/app/views/update/checkInstall.phtml
+++ b/app/views/update/checkInstall.phtml
@@ -9,7 +9,7 @@
<p class="alert <?php echo $status ? 'alert-success' : 'alert-error'; ?>">
<?php
if ($key === 'php') {
- echo _t('admin.check_install.' . $key . '.' . ($status ? 'ok' : 'nok'), PHP_VERSION, '5.3.3');
+ echo _t('admin.check_install.' . $key . '.' . ($status ? 'ok' : 'nok'), PHP_VERSION, '5.3.8');
} else {
echo _t('admin.check_install.' . $key . '.' . ($status ? 'ok' : 'nok'));
}
diff --git a/docs/en/users/01_Installation.md b/docs/en/users/01_Installation.md
index 6c979fd42..b2a717629 100644
--- a/docs/en/users/01_Installation.md
+++ b/docs/en/users/01_Installation.md
@@ -7,18 +7,15 @@ You need to verify that your server can run FreshRSS before installing it. If yo
| Software | Recommended | Works also with |
| ----------- | ---------------- | ----------------------------- |
| Web server | **Apache 2** | Nginx |
-| PHP | **PHP 5.3.7+** | PHP 5.2+ |
+| PHP | **PHP 5.5+** | PHP 5.3.8+ |
| PHP modules | Required: libxml, cURL, PDO_MySQL, PCRE and ctype. \\ Required (32-bit only): GMP \\Recommanded: JSON, Zlib, mbstring, iconv, ZipArchive | |
| Database | **MySQL 5.0.3+** | SQLite 3.7.4+ |
| Browser | **Firefox** | Chrome, Opera, Safari or IE9+ |
## Important notice
-FreshRSS **CAN** work with PHP 5.3.3. To do so, we are using specific functions available in the ''password_compat'' library for the form authentication. This library is compatible with PHP >= 5.3.7 but some older version include the patch.
-It all depends on the distribution:
+FreshRSS **CAN** work with PHP 5.3.8+. To do so, we are using specific functions available in the [''password_compat'' library](https://github.com/ircmaxell/password_compat#requirements) for the form authentication.
-* CentOS and RHEL 6.5 are supported.
-* On the other hand, **Debian with PHP 5.3.3 is not**! ([For more information](https://github.com/ircmaxell/password_compat#requirements))
# Getting the appropriate version of FreshRSS
diff --git a/docs/fr/users/01_Installation.md b/docs/fr/users/01_Installation.md
index 86daa636a..765cb9481 100644
--- a/docs/fr/users/01_Installation.md
+++ b/docs/fr/users/01_Installation.md
@@ -7,17 +7,14 @@ Il est toutefois de votre responsabilité de vérifier que votre hébergement pe
| Logiciel | Recommandé | Fonctionne aussi avec |
| -------- | ----------- | --------------------- |
| Serveur web | **Apache 2** | Nginx |
- | PHP | **PHP 5.3.7+** | PHP 5.2+ |
+ | PHP | **PHP 5.5+** | PHP 5.3.8+ |
| Modules PHP | Requis : libxml, cURL, PDO_MySQL, PCRE et ctype \\ Requis (32 bits seulement) : GMP \\ Recommandé : JSON, Zlib, mbstring et iconv, ZipArchive | |
| Base de données | **MySQL 5.0.3+** | SQLite 3.7.4+ |
| Navigateur | **Firefox** | Chrome, Opera, Safari or IE 9+ |
## Note importante
-FreshRSS **PEUT** fonctionner sur la version de PHP 5.3.3. En effet, nous utilisons des fonctions spécifiques pour la connexion par formulaire et notamment la bibliothèque ''password_compat''. Celle-ci est compatible avec PHP >= 5.3.7 ou certaines versions plus anciennes incluant un patch spécifique. Cela dépend de la distribution :
-
-* CentOS et la Red Hat Enterprise Linux 6.5 sont supportés.
-* En revanche, **Debian avec PHP 5.3.3 n'est pas supporté !** ([Plus d'informations](https://github.com/ircmaxell/password_compat#requirements))
+FreshRSS **PEUT** fonctionner sur la version de PHP 5.3.8+. En effet, nous utilisons des fonctions spécifiques pour la connexion par formulaire et notamment la [bibliothèque ''password_compat''](https://github.com/ircmaxell/password_compat#requirements).
# Choisir la bonne version de FreshRSS
diff --git a/lib/lib_install.php b/lib/lib_install.php
index bf81c15b4..cc0dc3128 100644
--- a/lib/lib_install.php
+++ b/lib/lib_install.php
@@ -6,7 +6,7 @@ Minz_Configuration::register('default_system', join_path(FRESHRSS_PATH, 'config.
Minz_Configuration::register('default_user', join_path(FRESHRSS_PATH, 'config-user.default.php'));
function checkRequirements($dbType = '') {
- $php = version_compare(PHP_VERSION, '5.3.3') >= 0;
+ $php = version_compare(PHP_VERSION, '5.3.8') >= 0;
$minz = file_exists(join_path(LIB_PATH, 'Minz'));
$curl = extension_loaded('curl');
$pdo_mysql = extension_loaded('pdo_mysql');
diff --git a/lib/lib_rss.php b/lib/lib_rss.php
index 22136854e..dcce8a02c 100644
--- a/lib/lib_rss.php
+++ b/lib/lib_rss.php
@@ -1,4 +1,8 @@
<?php
+if (version_compare(PHP_VERSION, '5.3.8', '<')) {
+ die('FreshRSS error: FreshRSS requires PHP 5.3.8+!');
+}
+
if (!function_exists('json_decode')) {
require_once('JSON.php');
function json_decode($var, $assoc = false) {
@@ -393,7 +397,7 @@ function check_install_php() {
$pdo_mysql = extension_loaded('pdo_mysql');
$pdo_sqlite = extension_loaded('pdo_sqlite');
return array(
- 'php' => version_compare(PHP_VERSION, '5.3.3') >= 0,
+ 'php' => version_compare(PHP_VERSION, '5.3.8') >= 0,
'minz' => file_exists(LIB_PATH . '/Minz'),
'curl' => extension_loaded('curl'),
'pdo' => $pdo_mysql || $pdo_sqlite,