====== Wallabag installation under Debian ====== Wallabag is a self-hostable service that stores your web pages to read them later. With the following steps, you can set up your Wallabag under Debian. ===== Required packages ===== The required packages can be found [[https://doc.wallabag.org/en/admin/installation/requirements.html|unter be found at this link]]. ===== Installation ===== git clone https://github.com/wallabag/wallabag.git cd wallabag && make install ===== Virtual Host ===== ==== Apache 2.4 ==== ServerName wallabag.domain.tld ServerAlias www.wallabag.domain.tld # SSL configuration, you may want to take the easy route instead and use Lets Encrypt! SSLEngine On SSLProtocol -ALL +TLSv1 +TLSv1.2 SSLCompression Off SSLSessionTickets on SSLHonorCipherOrder off SSLCipherSuite ECDH+AESGCM:ECDH+AES256:!aNULL:!MD5:!DSS:!DH:!AES128 SSLVerifyDepth 10 SSLCertificateFile /etc/letsencrypt/live/wallabag.domain.tld/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/wallabag.domain.tld/privkey.pem SSLCACertificateFile /etc/letsencrypt/live/wallabag.domain.tld/chain.pem SSLCertificateChainFile /etc/letsencrypt/live/wallabag.domain.tld/fullchain.pem DocumentRoot "/home/user/wallabag/web" Require all granted Options +SymLinksIfOwnerMatch Options -MultiViews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ app.php [QSA,L] # If you don't want this caching strategy for your assets # you have to comment the two following blocks ExpiresActive On ExpiresByType application/javascript A259200 ExpiresByType image/avif "access plus 2592000 seconds" ExpiresByType image/gif "access plus 2592000 seconds" ExpiresByType image/jpg "access plus 2592000 seconds" ExpiresByType image/jpeg "access plus 2592000 seconds" ExpiresByType image/png "access plus 2592000 seconds" ExpiresByType image/webp "access plus 2592000 seconds" ExpiresByType text/css "access plus 2592000 seconds" Header set Cache-Control "max-age=2592000, public" Header set Cache-Control "max-age=2592000, public, immutable" Header set Cache-Control "max-age=2592000, private" # uncomment the following lines if you install assets as symlinks # or run into problems when compiling LESS/Sass/CoffeScript assets # # Options FollowSymlinks # # optionally disable the RewriteEngine for the asset directories # which will allow apache to simply reply with a 404 when files are # not found instead of passing the request into the full symfony stack RewriteEngine Off ErrorLog /var/log/apache2/wallabag_error.log CustomLog /var/log/apache2/wallabag_access.log combined ===== Authorisations ===== chown -R www-data:www-data /home/user/wallabag/var chown -R www-data:www-data /home/user/wallabag/web chown -R www-data:www-data /home/user/wallabag/bin/ chown -R www-data:www-data /home/user/wallabag/app/config/ chown -R www-data:www-data /home/user/wallabag/vendor/ chown -R www-data:www-data /home/user/wallabag/data/ ===== LetsEncrypt certificate as cronjob ===== 30 3 * * 0 /opt/certbot/certbot-auto certonly --apache --force-renewal -d wallabag.domain.tld --post-hook "/etc/init.d/apache2 reload"