diff options
Diffstat (limited to 'docs/en/admins/10_ServerConfig.md')
| -rw-r--r-- | docs/en/admins/10_ServerConfig.md | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/docs/en/admins/10_ServerConfig.md b/docs/en/admins/10_ServerConfig.md new file mode 100644 index 000000000..88387274a --- /dev/null +++ b/docs/en/admins/10_ServerConfig.md @@ -0,0 +1,103 @@ +# Apache/Nginx Configuration Files + +## Apache configuration +This is an example Apache virtual hosts configuration file. It covers HTTP and HTTPS configuration. + +``` +<VirtualHost *:80> + DocumentRoot /var/www/html/ + + #Default site... + + 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/ + + <Directory /path/to/FreshRSS/p> + AllowOverride AuthConfig FileInfo Indexes Limit + Require all granted + </Directory> + + 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 rss.example.net + DocumentRoot /path/to/FreshRSS/p/ + + <Directory /path/to/FreshRSS/p> + AllowOverride AuthConfig FileInfo Indexes Limit + Require all granted + </Directory> + + 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> + + # For the API + 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> +``` + +## Nginx configuration + +This is an example nginx configuration file. It covers HTTP, HTTPS, and php-fpm configuration. + +You can find simpler config file but they may be incompatible with FreshRSS API. +``` +server { + 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/php/php7.0-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; + } +} +``` |
