-# DISCLAMER
-
-This project is a fork of the [discontinued project](https://gitlab.com/mojo42/Jirafeau/) by [Jérôme Jutteau](https://gitlab.com/mojo42/).
-
-If you've also forked the original project, feel free to mention it in [comments](https://gitlab.com/mojo42/Jirafeau/-/issues/360). Jérôme will add it there.
-
-In this repository we are aiming to continue development of the original Jirafeau project. Feel free to contribute to this fork by participating in discussions and providing merge requests, so we can build the best version of Jirafeau together!
-
# Jirafeau
![Made With](https://img.shields.io/badge/made_with-php-blue.svg)
![Screenshot1](http://i.imgur.com/TPjh48P.png)
+## DISCLAMER
+
+This project is a fork of the [discontinued project](https://gitlab.com/mojo42/Jirafeau/) by [Jérôme Jutteau](https://gitlab.com/mojo42/).
+
+If you've also forked the original project, feel free to mention it in [comments](https://gitlab.com/mojo42/Jirafeau/-/issues/360). Jérôme will add it there.
+
+In this repository we are aiming to continue development of the original Jirafeau project. Feel free to contribute to this fork by participating in discussions and providing merge requests, so we can build the best version of Jirafeau together!
+
## Main features
- One upload → one download link and one delete link
- Move var folder to a place on your server which can't be directly accessed
- Disable automatic listing on your web server config or place a index.html in var's sub-directory (this is a limited solution)
-If you are using Apache, you can add the following line to your configuration to prevent people to access to your `var` folder:
+If you are using Apache, you can add the following lines to your configuration to prevent people to access to your `var` folder:
-`RedirectMatch 301 ^/var-.* http://my.service.jirafeau`
+```apache
+<LocationMatch "^/var-*">
+ Require all denied
+</LocationMatch>
+```
+
+Or you can put a `.htaccess` file containing this into your `var` folder:
+
+```apache
+Require all denied
+```
If you are using nginx, you can add the following to your $vhost.conf:
By activating this feature, you have to be aware of few things:
- Data encryption has a cost (CPU) and it takes more time for downloads to complete once file sent.
- During the download, the server will decrypt on the fly (and use resource).
-- This feature needs to have the Sodium php module.
+- This feature needs to have the [`Sodium`](https://www.php.net/manual/en/book.sodium.php) PHP module.
- File de-duplication will stop to work (as we can't compare two encrypted files).
- Be sure your server does not log client's requests.
- Don't forget to enable HTTPS.
You may change the default theme to any of the existing ones or a custom.
-Open your `lib/config.local.php` and change setting in the `style` key to the name of any folder in the `/media` directory.
+Open your `lib/config.local.php` and change setting in the `style` key to the name of any folder in the `/media` directory. If you want to change the theme for dark mode, you have to set the `dark_style` key in the config file.
-Hint: To create a custom theme just copy the `courgette` folder and name your theme `custom` (this way it will be ignored by git and not overwritten during updates). You are invited to enhance the existing themes and send pull requests however.
+Hint: To create a custom theme just copy the `courgette` folder and name your theme `custom` (this way it will be ignored by git and not overwritten during updates). If you want to create a custom theme for dark mode, you have to put it in a folder named `dark-custom`. You are invited to enhance the existing themes and send pull requests however.
### I found a bug, what should I do?