PHP online file sharing service
Find a file
2020-05-02 01:00:35 +02:00
files Avec le répertoire files c'est mieux 2019-11-18 01:21:44 +01:00
htmlPages Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
lang V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
lib V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
.gitignore Mise en place de l'environnement de dev 2019-11-26 00:46:13 +01:00
.htaccess V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
android-chrome-192x192.png Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
android-chrome-512x512.png Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
apple-touch-icon.png Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
config.yaml.dist V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
cron.php crontab explain 2019-11-27 16:23:53 +01:00
favicon-16x16.png Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
favicon-32x32.png Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
favicon.ico Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
index.php V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
jquery-file-upload.html V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
my.php - 0.2 2019-12-05 15:30:19 +01:00
README.md V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00
robots.txt Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
site.webmanifest Pas loin de la 0.1 2019-11-18 01:19:13 +01:00
upload.php V1.0 (check Readme.md) 2020-05-02 01:00:35 +02:00

file2link

PHP file sharing service free of rights (license Beerware) and free.

Demonstration : https://dl.zici.fr/

Requis

  • HTTP serveur htaccess compatible (url rewriting enable)
  • PHP 5.6 minimum
  • PHP GD lib
    • ImageMagick convert binary (option)
  • No nessecary database

Installation

Upload source content on you web server

Move config file :

mv config.yaml.exemple config.yaml

Change paramètre in config.yaml Make sure the consistency between:

  • maxUploadPerFile is similar to PHP config upload_max_filesize and post_max_size
  • maxUploadNb is similar to PHP config max_file_uploads

Make sure the "files" directory is writable

Crontab

By default the expired files this deletes with visits to the homepage. But you can delete them by cron job:

10	0	*	*	*	/var/www/dl.zici.fr/cron.php

In config.yaml change

expireCron: web

to

expireCron: cli

Changelog

  • futur
    • serveur disque use limit (check % space and disable upload if < X%)
    • drag and drop for upload
    • limit by ip+cookies (sqlite) (limit abuse)
    • crypt files
    • captcha / anti bot
    • "signaler un fichier"
    • mimeTypes restriction
  • 1.0
    • jQuery-File-Upload implemented : https://github.com/blueimp/jQuery-File-Upload/
    • Resize image befor upload
    • Preview audio/video/image befor upload
    • Config add variable :
      • minUploadPerFile, acceptFileTypes, imageAutoOrient
      • Deprecated : mimeTypes restriction
    • Add on existent sharing
  • 0.2
    • Mod gallery if images
    • Passowrd for access
    • Delete after first access OR define nb access (10, 20...)
    • Bug Fix :
      • BUG day / days
      • BUG my files no work in html page
      • BUG delete file, but already in storage
    • MyFiles Rewrite
  • 0.1 (16/10/2019)
    • Configure with YAML file
    • Submit a file upload service with temporary link (Direct link, force download link, download multiple after zip)
    • Limit in time
    • Limit in number is possible
    • Limit on type of file (mime) is possible
    • Upload with progress bar in HTML5
    • Upload multi file
    • Multilingual (French / English)
    • Images resize possible
    • Find these files before uploader (local storage)
    • Housekeeping in files expired by cron job or by web traffic on the page
    • Personnalize content page with include header-page.php, header.php, footer-page.php, footer.php, start-home.php, end-home.php

Licence

Beerware : https://en.wikipedia.org/wiki/Beerware

Crédit

Mime type icone : https://github.com/colorswall/CSS-file-icons
Icone : https://fontawesome.com Creative Commons Attribution 4.0 International license

Author

David Mercereau david #arobase# mercereau #point# info

Translation

  • oc : Quentin PAGÈS
  • fr/en : David Mercereau