Завершив невеликий проєкт зі створення форми для завантаження файлів у хмарне сховище.
Проєкт реалізовано за допомогою PHP, Redis та WebDAV для забезпечення ефективного зберігання та обробки файлів.

Overview:

This project provides a secure, temporary file-upload service with time-limited access. It generates a unique URL for file uploads, includes CAPTCHA protection, and sends the URL to the user via email. The following is a list of key functionalities and features implemented in this project.

Key Features:

Secure URL Registration

  • Generates a unique URL for each request.
  • Protects URL generation with CAPTCHA to prevent abuse.

Time-Limited URL Access

  • URL expires 48 hours after creation.
  • URL is sent only to the provided email address.
  • After the URL is activated, the expiration time reduces to 1 hour for security.

User File Upload

  • Allows users to upload files up to 1GB.
  • Displays upload progress, including elapsed and remaining time estimates.

File Storage on NextCloud

  • Uploaded files are stored in a fixed folder within NextCloud storage.
  • Original filenames are replaced with a new generated name for privacy.

Metadata Generation

  • A .txt metadata file is created for each uploaded file.
  • The metadata file contains the original filename and the sender’s email address.

Basic:

$ curl -u user:pass -T error.log "https://example.com/nextcloud/remote.php/dav/files/USERNAME/$(date '+%d-%b-%Y')/error.log"

####

Solution:

GitHub: https://github.com/lexxai/php_form_upload_files_to_wevdab

####

Examples:

####