Files
CloudflareR2-Manager/.env.example
T
Ty Clifford 4b4c18f2d9 - Added R2 multipart upload support and streamed fallback uploads in [R2Client.php](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/src/R2/R2Client.php).
Added a shared resumable upload session service in 
[ResumableUploadService.php](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/src/Service/ResumableUploadService.php).
Wired dashboard JSON upload endpoints in 
[AppController.php](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/src/Controller/AppController.php).
Reworked the upload UI/JS to chunk files directly from the browser to 
presigned R2 multipart URLs in 
[app.js](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/public/assets/app.js).
Added the dedicated iPhone/Safari side uploader at 
[side-upload.php](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/public/side-upload.php), 
with its own password and fixed destination prefix via script constants, 
.env, or side-upload.json.
Added 
[side-upload.example.json](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/side-upload.example.json), 
ignored the real side-upload.json, and documented setup/CORS in 
[README.md](/Users/tyemeclifford/Documents/GH/CloudflareR2-Manager/README.md).
2026-06-21 11:24:09 -04:00

34 lines
1.0 KiB
Bash

APP_NAME="R2 Manager"
APP_PASSWORD="change-me"
# APP_PASSWORD_HASH="$2y$10$replace-with-password-hash"
APP_SESSION_NAME="r2_manager_session"
APP_DEBUG=false
R2_ACCOUNT_ID=""
R2_ACCESS_KEY_ID=""
R2_SECRET_ACCESS_KEY=""
R2_BUCKET=""
R2_REGION="auto"
R2_ENDPOINT=""
R2_PATH_STYLE=true
R2_REQUEST_TIMEOUT=300
# Optional public bucket or custom domain URL, for display/copy links only.
R2_PUBLIC_URL=""
DB_PATH="storage/database/r2-manager.sqlite"
SYNC_PAGE_LIMIT=1000
# Resumable browser uploads use R2 multipart upload URLs.
# UPLOAD_PART_SIZE is bytes and must stay at or above 5242880 for R2/S3 multipart uploads.
UPLOAD_PART_SIZE=8388608
UPLOAD_PART_URL_TTL=3600
UPLOAD_SESSION_TTL=604800
# Optional quick side uploader at /side-upload.php. This password is independent from APP_PASSWORD.
# You can also copy side-upload.example.json to side-upload.json and set these there.
# SIDE_UPLOAD_PASSWORD="choose-a-different-password"
# SIDE_UPLOAD_PASSWORD_HASH="$2y$10$replace-with-side-password-hash"
SIDE_UPLOAD_PREFIX="iphone-uploads/"
SIDE_UPLOAD_TAGS="source=iphone"