diff options
| author | 2017-10-14 14:16:59 +0200 | |
|---|---|---|
| committer | 2017-10-14 14:16:59 +0200 | |
| commit | 920f886c55ef6cc241fac0e70127c9fe183a229c (patch) | |
| tree | c1b797a20e69a157b7d4816b8051b966232b27ef | |
| parent | f632a346269100d6a93bef318ffa66c97f16f6fa (diff) | |
A bit of Apache documentation (#1670)
https://github.com/FreshRSS/FreshRSS/issues/1666
https://github.com/FreshRSS/FreshRSS/issues/1669
https://github.com/FreshRSS/FreshRSS/issues/908
| -rw-r--r-- | README.fr.md | 5 | ||||
| -rw-r--r-- | README.md | 5 | ||||
| -rw-r--r-- | docs/en/users/01_Installation.md | 119 | ||||
| -rw-r--r-- | docs/fr/users/01_Installation.md | 117 |
4 files changed, 150 insertions, 96 deletions
diff --git a/README.fr.md b/README.fr.md index 8f19b280a..797d43504 100644 --- a/README.fr.md +++ b/README.fr.md @@ -44,7 +44,7 @@ Nous sommes une communauté amicale. # Documentation * https://freshrss.github.io/FreshRSS/fr/ -# Installation +# [Installation](https://freshrss.github.io/FreshRSS/fr/users/01_Installation.html) 1. Récupérez l’application FreshRSS via la commande git ou [en téléchargeant l’archive](../releases) 2. Placez l’application sur votre serveur (la partie à exposer au Web est le répertoire `./p/`) 3. Le serveur Web doit avoir les droits d’écriture dans le répertoire `./data/` @@ -52,6 +52,7 @@ Nous sommes une communauté amicale. * ou utilisez [l’interface en ligne de commande](./cli/README.md) 5. Tout devrait fonctionner :) En cas de problème, n’hésitez pas à [nous contacter](https://github.com/FreshRSS/FreshRSS/issues). 6. Des paramètres de configuration avancée peuvent être vues dans [config.default.php](./config.default.php) et modifiées dans `data/config.php`. +7. Avec Apache, activer [`AllowEncodedSlashes`](http://httpd.apache.org/docs/trunk/mod/core.html#allowencodedslashes) pour une meilleure compatibilité avec les clients mobiles. ## Installation automatisée * [](https://dfabric.github.io/DPlatform-ShellCore) @@ -171,7 +172,7 @@ Voir le [dépôt dédié à ces extensions](https://github.com/FreshRSS/Extensio * [password_compat](https://github.com/ircmaxell/password_compat) -# Clients compatibles +# [Clients compatibles](https://freshrss.github.io/FreshRSS/en/users/06_Mobile_access.html) Tout client supportant une API de type Google Reader. Sélection : * Android @@ -46,7 +46,7 @@ We are a friendly community. # Documentation * https://freshrss.github.io/FreshRSS/en/ -# Installation +# [Installation](https://freshrss.github.io/FreshRSS/en/users/01_Installation.html) 1. Get FreshRSS with git or [by downloading the archive](https://github.com/FreshRSS/FreshRSS/archive/master.zip) 2. Dump the application on your server (expose only the `./p/` folder) 3. Add write access on `./data/` folder to the webserver user @@ -54,6 +54,7 @@ We are a friendly community. * or use the [Command-Line Interface](./cli/README.md) 5. Everything should be working :) If you encounter any problem, feel free [contact us](https://github.com/FreshRSS/FreshRSS/issues). 6. Advanced configuration settings can be seen in [config.default.php](./config.default.php) and modified in `data/config.php`. +7. When using Apache, enable [`AllowEncodedSlashes`](http://httpd.apache.org/docs/trunk/mod/core.html#allowencodedslashes) for better compatibility with mobile clients. ## Automated install * [](https://cloudron.io/button.html?app=org.freshrss.cloudronapp) @@ -175,7 +176,7 @@ See the [repository dedicated to those extensions](https://github.com/FreshRSS/E * [password_compat](https://github.com/ircmaxell/password_compat) -# Compatible clients +# [Compatible clients](https://freshrss.github.io/FreshRSS/en/users/06_Mobile_access.html) Any client supporting a Google Reader-like API. Selection: * Android diff --git a/docs/en/users/01_Installation.md b/docs/en/users/01_Installation.md index b2a717629..d0046eebe 100644 --- a/docs/en/users/01_Installation.md +++ b/docs/en/users/01_Installation.md @@ -10,7 +10,7 @@ You need to verify that your server can run FreshRSS before installing it. If yo | 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+ | +| Browser | **Firefox** | Chrome, Opera, Safari, or IE11+ | ## Important notice @@ -39,31 +39,44 @@ This is an example Apache virtual hosts configuration file. It covers http and h ``` <VirtualHost *:80> - ServerName example.com - DocumentRoot /path/to/FreshRSS + DocumentRoot /var/www/html/ - ErrorLog ${APACHE_LOG_DIR}/freshrss_error.log - CustomLog ${APACHE_LOG_DIR}/freshrss_access.log combined + #Default site... - RewriteEngine on - RewriteCond %{SERVER_NAME} = example.com - RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent] + ErrorLog ${APACHE_LOG_DIR}/error.default.log + CustomLog ${APACHE_LOG_DIR}/access.default.log vhost_combined +</VirtualHost> + +<VirtualHost *:80> + ServerName rss.example.net + DocumentRoot /path/to/FreshRSS/p/ + + ErrorLog ${APACHE_LOG_DIR}/freshrss_error.log + CustomLog ${APACHE_LOG_DIR}/freshrss_access.log combined + + AllowEncodedSlashes On </VirtualHost> <IfModule mod_ssl.c> -<VirtualHost *:443> - ServerName example.com - DocumentRoot /path/to/FreshRSS + <VirtualHost *:443> + ServerName rss.example.net + DocumentRoot /path/to/FreshRSS/p/ - ErrorLog ${APACHE_LOG_DIR}/freshrss_error.log - CustomLog ${APACHE_LOG_DIR}/freshrss_access.log combined + ErrorLog ${APACHE_LOG_DIR}/freshrss_error.log + CustomLog ${APACHE_LOG_DIR}/freshrss_access.log combined - SSLCertificateFile /path/to/server.crt - SSLCertificateKeyFile /path/to/server.key + <IfModule mod_http2.c> + Protocols h2 http/1.1 + </IfModule> - # Optional letsencrypt config (uncomment) line below - #Include /etc/letsencrypt/options-ssl-apache.conf -</VirtualHost> + AllowEncodedSlashes On + + SSLEngine on + SSLCompression off + SSLCertificateFile /path/to/server.crt + SSLCertificateKeyFile /path/to/server.key + # Additional SSL configuration, e.g. with LetsEncrypt + </VirtualHost> </IfModule> ``` @@ -75,41 +88,41 @@ _You can find simpler config file but they may be incompatible with FreshRSS API ``` server { - listen 80; # http on port 80 - listen 443 ssl; # https on port 443 - - # https configuration - ssl on; - ssl_certificate /etc/nginx/server.crt; - ssl_certificate_key /etc/nginx/server.key; - - # your server's url(s) - server_name example.com rss.example.com; - - # the folder p of your FreshRSS installation - root /srv/FreshRSS/p/; - - index index.php index.html index.htm; - - # nginx log files - access_log /var/log/nginx/rss.access.log; - error_log /var/log/nginx/rss.error.log; - - # php files handling - # this regex is mandatory because of the API - location ~ ^.+?\.php(/.*)?$ { - fastcgi_pass unix:/var/run/php5-fpm.sock; - fastcgi_split_path_info ^(.+\.php)(/.*)$; - # By default, the variable PATH_INFO is not set under PHP-FPM - # But FreshRSS API greader.php need it. If you have a "Bad Request" error, double check this var ! - fastcgi_param PATH_INFO $fastcgi_path_info; - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - } - - location / { - try_files $uri $uri/ index.php; - } + listen 80; + listen 443 ssl; + + # https configuration + ssl on; + ssl_certificate /etc/nginx/server.crt; + ssl_certificate_key /etc/nginx/server.key; + + # your server's url(s) + server_name rss.example.net; + + # the folder p of your FreshRSS installation + root /srv/FreshRSS/p/; + + index index.php index.html index.htm; + + # nginx log files + access_log /var/log/nginx/rss.access.log; + error_log /var/log/nginx/rss.error.log; + + # php files handling + # this regex is mandatory because of the API + location ~ ^.+?\.php(/.*)?$ { + fastcgi_pass unix:/var/run/php5-fpm.sock; + fastcgi_split_path_info ^(.+\.php)(/.*)$; + # By default, the variable PATH_INFO is not set under PHP-FPM + # But FreshRSS API greader.php need it. If you have a "Bad Request" error, double check this var ! + fastcgi_param PATH_INFO $fastcgi_path_info; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + } + + location / { + try_files $uri $uri/ index.php; + } } ``` diff --git a/docs/fr/users/01_Installation.md b/docs/fr/users/01_Installation.md index 765cb9481..03cdbdd88 100644 --- a/docs/fr/users/01_Installation.md +++ b/docs/fr/users/01_Installation.md @@ -10,7 +10,7 @@ Il est toutefois de votre responsabilité de vérifier que votre hébergement pe | 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+ | + | Navigateur | **Firefox** | Chrome, Opera, Safari, or IE 11+ | ## Note importante @@ -30,13 +30,52 @@ Cette version sort lorsqu'on considère qu'on a répondu à nos objectifs en ter [Téléchargement](https://github.com/FreshRSS/FreshRSS/archive/dev.zip) -Comme son nom l'indique, il s'agit de la version sur laquelle les développeurs travaillent. **Elle est donc totalement instable !** Si vous souhaitez recevoir les améliorations au jour le jour, vous pouvez l'utiliser, mais attention à bien suivre les évolutions sur Github (via [le flux RSS de la branche](https://github.com/FreshRSS/FreshRSS/commits/dev.atom) par exemple). On raconte que les développeurs principaux l'utilisent quotidiennement sans avoir de soucis. Sans doute savent-ils ce qu'ils font… +Comme son nom l'indique, il s'agit de la version sur laquelle les développeurs travaillent. **Elle est donc instable !** Si vous souhaitez recevoir les améliorations au jour le jour, vous pouvez l'utiliser, mais attention à bien suivre les évolutions sur Github (via [le flux RSS de la branche](https://github.com/FreshRSS/FreshRSS/commits/dev.atom) par exemple). On raconte que les développeurs principaux l'utilisent quotidiennement sans avoir de soucis. Sans doute savent-ils ce qu'ils font… # Installation sur Apache -**TODO** +``` +<VirtualHost *:80> + DocumentRoot /var/www/html/ + + #Site par défaut... + + ErrorLog ${APACHE_LOG_DIR}/error.default.log + CustomLog ${APACHE_LOG_DIR}/access.default.log vhost_combined +</VirtualHost> + +<VirtualHost *:80> + ServerName rss.example.net + DocumentRoot /path/to/FreshRSS/p/ + + ErrorLog ${APACHE_LOG_DIR}/freshrss_error.log + CustomLog ${APACHE_LOG_DIR}/freshrss_access.log combined -Cette partie n'a pas encore été écrite. Néanmoins, comme il s'agit d'une bête application PHP, cela ne pose généralement pas de soucis à installer :) + AllowEncodedSlashes On +</VirtualHost> + +<IfModule mod_ssl.c> + <VirtualHost *:443> + ServerName rss.example.net + DocumentRoot /path/to/FreshRSS/p/ + + ErrorLog ${APACHE_LOG_DIR}/freshrss_error.log + CustomLog ${APACHE_LOG_DIR}/freshrss_access.log combined + + <IfModule mod_http2.c> + Protocols h2 http/1.1 + </IfModule> + + AllowEncodedSlashes On + + SSLEngine on + SSLCompression off + SSLCertificateFile /path/to/server.crt + SSLCertificateKeyFile /path/to/server.key + # Additional SSL configuration, e.g. with LetsEncrypt + </VirtualHost> +</IfModule> +``` # Installation sur Nginx @@ -46,41 +85,41 @@ _Vous pourrez trouver d'autres fichiers de configuration plus simples mais ces d ``` server { - listen 80; # http sur le port 80 - listen 443 ssl; # https sur le port 443 - - # configuration https - ssl on; - ssl_certificate /etc/nginx/server.crt; - ssl_certificate_key /etc/nginx/server.key; - - # l'url ou les urls de votre serveur - server_name example.com rss.example.com; - - # le répertoire où se trouve le dossier p de FreshRSS - root /srv/FreshRSS/p/; - - index index.php index.html index.htm; - - # les fichiers de log nginx - access_log /var/log/nginx/rss.access.log; - error_log /var/log/nginx/rss.error.log; - - # gestion des fichiers php - # il est nécessaire d'utiliser cette expression régulière pour le bon fonctionnement de l'API - location ~ ^.+?\.php(/.*)?$ { - fastcgi_pass unix:/var/run/php5-fpm.sock; - fastcgi_split_path_info ^(.+\.php)(/.*)$; - # Par défaut la variable PATH_INFO n'est pas définie sous PHP-FPM - # or l'API FreshRSS greader.php en a besoin. Si vous avez un "Bad Request", vérifiez bien cette dernière ! - fastcgi_param PATH_INFO $fastcgi_path_info; - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - } - - location / { - try_files $uri $uri/ index.php; - } + listen 80; + listen 443 ssl; + + # configuration https + ssl on; + ssl_certificate /etc/nginx/server.crt; + ssl_certificate_key /etc/nginx/server.key; + + # l'url ou les urls de votre serveur + server_name rss.example.net; + + # le répertoire où se trouve le dossier p de FreshRSS + root /srv/FreshRSS/p/; + + index index.php index.html index.htm; + + # les fichiers de log nginx + access_log /var/log/nginx/rss.access.log; + error_log /var/log/nginx/rss.error.log; + + # gestion des fichiers php + # il est nécessaire d'utiliser cette expression régulière pour le bon fonctionnement de l'API + location ~ ^.+?\.php(/.*)?$ { + fastcgi_pass unix:/var/run/php5-fpm.sock; + fastcgi_split_path_info ^(.+\.php)(/.*)$; + # Par défaut la variable PATH_INFO n'est pas définie sous PHP-FPM + # or l'API FreshRSS greader.php en a besoin. Si vous avez un "Bad Request", vérifiez bien cette dernière ! + fastcgi_param PATH_INFO $fastcgi_path_info; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + } + + location / { + try_files $uri $uri/ index.php; + } } ``` |
