X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=doc%2FServer-configuration.html;h=1d2276df648833c2be3c5cf2238668e4509e751c;hb=bb953a0106697c59101ef77022e2363446c5fc02;hp=de6bf488cec95b7289bbb1c6ef6437e6a9d8c463;hpb=27cf2e671d1f35bd8c9383d008cd3733fc1c6e0d;p=github%2Fshaarli%2FShaarli.git diff --git a/doc/Server-configuration.html b/doc/Server-configuration.html index de6bf488..1d2276df 100644 --- a/doc/Server-configuration.html +++ b/doc/Server-configuration.html @@ -4,31 +4,49 @@ - Shaarli - Server configuration + Shaarli – Server configuration - +
@@ -36,21 +54,30 @@ code > span.er { color: #ff0000; font-weight: bold; }
  • Home
  • Installation
  • +
  • Docker
  • Usage
  • How To
  • Troubleshooting
  • Development @@ -60,6 +87,7 @@ code > span.er { color: #ff0000; font-weight: bold; }
  • Directory structure
  • 3rd party libraries
  • Plugin System
  • +
  • Release Shaarli
  • Security
  • Static analysis
  • Theming
  • @@ -77,10 +105,10 @@ code > span.er { color: #ff0000; font-weight: bold; }

    Example virtual host configurations for popular web servers

    Prerequisites

    +

    Shaarli

    +

    HTTPS, TLS and self-signed certificates

    Related guides:

    +

    Proxies

    +

    If Shaarli is served behind a proxy (i.e. there is a proxy server between clients and the web server hosting Shaarli), please refer to the proxy server documentation for proper configuration. In particular, you have to ensure that the following server variables are properly set:

    + +

    See also proxy-related issues.

    Apache

    Minimal

    -
    <VirtualHost *:80>
    +
    <VirtualHost *:80>
         ServerName   shaarli.my-domain.org
         DocumentRoot /absolute/path/to/shaarli/
    -</VirtualHost>
    +</VirtualHost>

    Debug - Log all the things!

    This configuration will log both Apache and PHP errors, which may prove useful to identify server configuration errors.

    See:

    -
    <VirtualHost *:80>
    +
    <VirtualHost *:80>
         ServerName   shaarli.my-domain.org
         DocumentRoot /absolute/path/to/shaarli/
     
    @@ -118,24 +156,24 @@ code > span.er { color: #ff0000; font-weight: bold; }
         php_flag  display_errors on
         php_value error_reporting 2147483647
         php_value error_log /var/log/apache2/shaarli-php-error.log
    -</VirtualHost>
    +</VirtualHost>

    Standard - Keep access and error logs

    -
    <VirtualHost *:80>
    +
    <VirtualHost *:80>
         ServerName   shaarli.my-domain.org
         DocumentRoot /absolute/path/to/shaarli/
     
         LogLevel  warn
         ErrorLog  /var/log/apache2/shaarli-error.log
         CustomLog /var/log/apache2/shaarli-access.log combined
    -</VirtualHost>
    +</VirtualHost>

    Paranoid - Redirect HTTP (:80) to HTTPS (:443)

    See Server-side TLS (Mozilla).

    -
    <VirtualHost *:443>
    +
    <VirtualHost *:443>
         ServerName   shaarli.my-domain.org
         DocumentRoot /absolute/path/to/shaarli/
     
         SSLEngine             on
    -    SSLCertificateFile    /absolute/path/to/the/website/certificate.crt
    +    SSLCertificateFile    /absolute/path/to/the/website/certificate.pem
         SSLCertificateKeyFile /absolute/path/to/the/website/key.key
     
         <Directory /absolute/path/to/shaarli/>
    @@ -156,7 +194,7 @@ code > span.er { color: #ff0000; font-weight: bold; }
         LogLevel  warn
         ErrorLog  /var/log/apache2/shaarli-error.log
         CustomLog /var/log/apache2/shaarli-access.log combined
    -</VirtualHost>
    +</VirtualHost>

    LightHttpd

    Nginx

    Foreword

    @@ -202,13 +240,13 @@ code > span.er { color: #ff0000; font-weight: bold; }
  • user:group = john:users,
  • which corresponds to the following service configuration:

    -
    ; /etc/php/php-fpm.conf
    +
    ; /etc/php/php-fpm.conf
     user = john
     group = users
     
     [...][](.html)
     listen.owner = john
    -listen.group = users
    +listen.group = users
    # /etc/nginx/nginx.conf
     user john users;
     
    @@ -278,10 +316,15 @@ location ~ ~$ {
     }
    # /etc/nginx/php.conf
     location ~ (index)\.php$ {
    -    # proxy PHP requests to PHP-FPM
    +    # filter and proxy PHP requests to PHP-FPM
         fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
         fastcgi_index  index.php;
         include        fastcgi.conf;
    +}
    +
    +location ~ \.php$ {
    +    # deny access to all other PHP scripts
    +    deny all;
     }
    # /etc/nginx/static_assets.conf
     location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
    @@ -367,5 +410,10 @@ http {
             include php.conf;
         }
     }
    +

    Restricting search engines and web crawler traffic

    +

    Creating a robots.txt witht he following contents at the root of your Shaarli installation will prevent "honest" web crawlers from indexing each and every link and Daily page from a Shaarli instance, thus getting rid of a certain amount of unsollicited network traffic.

    +
    User-agent: *
    +Disallow: /
    +

    See: http://www.robotstxt.org/, http://www.robotstxt.org/robotstxt.html, http://www.robotstxt.org/meta.html