92 Commits

Author SHA1 Message Date
Caleb Mazalevskis
d745403757 Fix language code capitalisation. (#1385) 2026-03-28 17:32:38 +05:30
nilsjonsson
6d1e962fc6 Fix spelling and update Swedish translations (#1379)
* Add Swedish translation

* Correct spelling

* Update Swedish translation
2026-03-12 10:32:20 +05:30
nilsjonsson
bcc2fc5afa Add Swedish translation (#1378) 2026-03-11 19:24:32 +05:30
anawalinski
b67f3ca7d9 Added Docker Compose (#1372)
* Added docker compose

* Fixed typos in comments

* Added healtchcheck and made changes after review.
2026-02-03 22:06:38 +05:30
MKJJJ
2e4ac97399 Update translation.json (#1370)
Added 8 translations at the end of the german section.
2026-01-29 07:01:09 +05:30
Prasath Mani
dd79258999 Advanced Search not working for read-only users #1325 2025-11-13 13:28:40 +05:30
Milan Mitrovic
dd2e22781b Added missing csrf token verification (#1347)
Co-authored-by: Milan Mitrovic <milan.mitrovic@abstract.rs>
2025-10-13 09:09:05 +05:30
Annun
cc3426aebe fix: 部分虚拟机提供商的HTTPS值为ON,导致['HTTPS'] == 'on'失效,转换为小写后比较 (#1344) 2025-09-23 08:54:58 +05:30
Kogulan
645d09a6ef correction in MIME type (#1335)
correction in MIME type at line no 3303
2025-08-11 08:35:02 +05:30
maghuro
c049ba96c8 Add Portuguese from Portugal (#1326)
And rename Brazilian translation
2025-06-16 10:29:04 +05:30
kev1n
7e7fb1f505 translation.json: Corrected German translations (#1287)
CreateNewItem
Original: “Neue Datei erstellen”
Corrected: “Neues Element erstellen”

UploadingFiles
Original: “Datei hochladen”
Corrected: “Dateien hochladen”

Invalid file or folder name
Original: “Ungältiger Datei- oder Ordnername”
Corrected: “Ungültiger Datei- oder Ordnername”

Operations with archives are not available
Original: “Archiv-Funktionen nicht verfägbar”
Corrected: “Archiv-Funktionen nicht verfügbar”
2025-03-09 04:46:35 +05:30
Prasath Mani
bf2c2a9a4d Update tinyfilemanager.php
Resolve the problem of the User dropdown being cut off.
2025-02-26 08:17:58 +05:30
Prasath Mani
64f7b29c78 Update tinyfilemanager.php 2025-02-23 11:34:08 +05:30
ner0
07ac97c20b Date Modified in file view (#1250)
* Date Modified in file view

* Add translation support
2025-02-02 09:55:41 +05:30
Michele Locati
8c78bc78f9 Allow hiding files/folders by full path (#1092) 2025-01-23 07:32:50 +05:30
ner0
8a17a5b210 Minor identation issues (#1273) 2025-01-23 07:26:10 +05:30
imcraftsman
9792bd000f Update tinyfilemanager.php (#1268)
running envirement: Android 4.4+PHP 7.4.3+ KSWEB
http://192.168.1.2/tinyfilemanager.php, afer login,the main page could not be showed entirely,it just shows half of navigation bar.

that's becuase of
there are two same lines of codes which cause the problem. they are
$owner = posix_getpwuid(fileowner($path . '/' . $f));
when the funciton fileowner($path . '/' . $f)  return 0 and  run the function posix_getpwuid(....), it trig an error.
please check the codes in line 2156--2168 and 2221--2233

suggest replace these two parts with followed  codes:
                $owner = array('name' => '?');
                $group = array('name' => '?');
                if (function_exists('posix_getpwuid') && function_exists('posix_getgrgid')) {
                    try{
                        $owner_id = fileowner($path . '/' . $f);
                        if($owner_id != 0) {
                            $owner_info = posix_getpwuid($owner_id);
                           if ($owner_info) {
                                  $owner =  $owner_info;
                           }
                       }

                        $group_id = filegroup($path . '/' . $f);
                        $group_info = posix_getgrgid($group_id);
                        if ($group_info) {
                             $group =  $group_info;
                         }

                    } catch(Exception $e){
                       error_log("exception:" . $e->getMessage());
                    }
                }
2025-01-20 17:06:35 +05:30
Prasath Mani
232fc78f2e Update cdn versions, Improve the designs, Format the Code and Update Readme 2024-11-05 05:48:15 +05:30
paponius
c38dca17e4 Support55 (#1076)
* random_bytes() only for >PHP7

* tab to 4 spaces

---------

Co-authored-by: Prasath Mani <prasathmani@users.noreply.github.com>
2024-10-14 09:30:02 +05:30
Dev Goyal
ac3dd478f5 fix hostinger's devil signature making it a false positive on hosting antivirus scanner (#1112)
Co-authored-by: Prasath Mani <prasathmani@users.noreply.github.com>
2024-10-14 09:27:55 +05:30
Prasath Mani
01cfb5d8ac UI cosmetic changes 2024-10-14 09:25:51 +05:30
Joshua Myers
94b62544bd Added Additional Delete Link in File Viewer View (#1141)
* Added Additional Delete Link in File Viewer View

I found myself clicking into specific files to see them larger, then wanting to delete them, only to find I had to go back to another screen to delete them.

* Changed Reference to Invalid Variable
2024-10-14 09:11:17 +05:30
Rolf Allard van Hagen
1042994a60 Save $CONFIG to config.php if it exists (#1144)
Writes $CONFIG variable to the main plugin file, unless there is a config.php
2024-10-14 09:09:03 +05:30
Jabed Bhuiyan
3716af20a2 Dynamic Browser Tab Title Handling Based on File Context (#1202)
* Update tinyfilemanager.php

Now it will show the filename as browser tab title so that user can easily identify which file is opened on which tab.

* Update tinyfilemanager.php

remove lines 3722 and 3734 and add this directly in  3733 as per the suggestion of @ner00

* Update tinyfilemanager.php

extra trailing space removed
2024-10-14 09:06:19 +05:30
Vadászi Attila
8d953bf0f9 Fix multiple download and browse while downloading (#1242) 2024-10-14 09:05:03 +05:30
Prasath Mani
d26c9e5cbf Update SECURITY.md (#1231) 2024-09-16 11:17:50 +05:30
Randy Garrison
0f58c2ca65 Add powershell file extension to text format for opening in editor. (#1228) 2024-09-10 03:39:29 +05:30
Caleb Mazalevskis
b602dcd172 Fix typos. (#1214) 2024-08-04 12:08:43 +05:30
Daniel Dias Rodrigues
1bcc240119 Added missing translatable string. Update pt-br translation. (#1204) 2024-07-05 04:43:26 +05:30
Awais
8b330b75a4 Update default font size to in jQuery initialization (#1200) 2024-06-24 08:13:07 +05:30
Prasath Mani
f120daa607 Update README.md 2024-06-06 09:23:44 +05:30
Prasath Mani
e27e1abeb4 remove email address 2024-06-06 09:20:20 +05:30
Fannie MC
a4d96e0eaf Add JSON Parse Error Handling in Upload Script (#1196)
* Add JSON Parse Error Handling in Upload Script

* Update tinyfilemanager.php

* Update tinyfilemanager.php
2024-05-31 09:45:09 +05:30
Prasath Mani
843e240757 Update tinyfilemanager.php 2024-05-28 06:50:00 +05:30
Prasath Mani
ecec756b71 Update tinyfilemanager.php 2024-05-28 04:51:37 +05:30
Daniel Dias Rodrigues
8366e1bc29 Expanded the list of files recognized as compressed (#1193) 2024-05-27 09:29:54 +05:30
Ijor Tengab
d8fceac7dd Fix #963 (#969) 2024-05-27 09:27:33 +05:30
Mahyar Damavand
a306f4f1f7 Add --no-cache to 'apk add' command in order to reduce docker image size (#1191) 2024-05-26 10:39:06 +05:30
BANKA2017
a1ae0fa729 fix: #52 Does not respect directory tree while uploading a folder containing sub-folders (#1056) 2024-05-01 10:01:27 +05:30
Torusrxxx
ca4b1b1743 Disable excluded extension name from viewing (#1151) 2024-03-25 11:09:24 +05:30
Michele Locati
8e87afae5b Fix wrong phpdoc of print_external() (#1091) 2023-09-14 15:05:36 +05:30
Tony Ganesh Prajapati
43063e4746 Update tinyfilemanager.php (#1086)
changing String "Filter" to "Search"
2023-08-28 12:29:45 +05:30
AJ.Bassa
47359d3f4e Update translation.json (#1083)
Updated Dutch translation
2023-08-11 01:14:37 +05:30
paponius
eb8f3d80bc random_bytes() only for >PHP7 (#1066) 2023-06-29 07:31:24 +05:30
ner0
f380478197 Typo & make text bold (#1042)
* Fix typo

* Make text bold for consistency

Also dropping the plural 's'
2023-05-16 08:17:43 +05:30
divinity76
f7a2f77008 reduce feof() calls (#1041)
micro-optimization: when doing large file copies, this will reduce the number of feof() calls. for example, if copying 100MB, this will save approximately 25,599 feof() calls (255 feof() calls for every MB) - also feofs() may do an actual syscall, and syscalls are relatively expensive/time-consuming.
2023-05-15 09:53:25 +05:30
Bryan
dabc4ea36e Fix highlightjs_style in config.php being ignored (#1039)
highlightjs_style variable is being used before config.php gets parsed, so preview style is always vs. This PR fixes that by moving config.php parsing to be before external resource calls.
2023-05-11 09:55:15 +05:30
ner0
7ec19c1659 Resize preview image and implement zoom in/out (#1036)
* Resize preview image and implement zoom in/out

* Remove redundant class name
2023-05-03 14:11:59 +05:30
DannyDaemonic
8486c7a240 Add configurable path display modes for better privacy and clarity (#1034) 2023-04-26 20:46:52 +05:30
xololunatic
8194249b66 login (Redirecting to Main domain of website instead of tfm.php) fix (#1031)
When logged in it takes to the website's main URL. For example, if I have tfm in www.example.com/tfm/index.php (index.php is tfm) then after logging in it redirects to www.example.com and then have to press back on the browser then it takes to www.example.com/tfm/index.php
2023-04-24 07:00:47 +05:30
Caleb Mazalevskis
da77df785a Fix typo. (#1028) 2023-04-23 19:59:23 +05:30
Micha Ober
00541fc469 Fix upload of existing files (#1026) 2023-04-21 19:21:31 +05:30
Joy Biswas
7ca87c9163 added bengali translation (#1018) 2023-04-21 10:06:09 +05:30
divinity76
f6a93653be use stream_copy_to_stream (#1014)
* use stream_copy_to_stream

it's simpler, and should be faster.
For example, stream_copy_to_stream can use sendfile ( https://man7.org/linux/man-pages/man2/sendfile.2.html ) on operating systems supporting it, which is faster and use less RAM than fread()+fwrite() (because it avoids copying data to/from userland, doing the copy entirely in-kernel~)

* fix loop early return, and workaround bug

* use feof

ref https://github.com/prasathmani/tinyfilemanager/issues/1016#issuecomment-1502081506
2023-04-21 10:05:45 +05:30
Micha Ober
85f35bc28f Check if posix_getpwuid/posix_getgrgid calls were successful (#1023) 2023-04-21 10:03:20 +05:30
divinity76
3a90a5916a tell git to always commit .php in unix-newlines (#1017)
so hopefully we don't get a repeat of https://github.com/prasathmani/tinyfilemanager/pull/994#issuecomment-1502035505
2023-04-11 07:51:47 +05:30
ner0
6a6eb8abec Prevent logout issue after page was cached (#1004)
Logout may not work otherwise, browser reloads cached page from disk instead of sending GET request ?logout=1 to server.
2023-03-31 04:16:23 +05:30
Prasath Mani
bf024c7c84 Update tinyfilemanager.php 2023-03-17 10:22:19 +05:30
Sergiu Bivol
d705da604c Update Romanian translations (#981) 2023-02-26 21:18:19 +05:30
ssams
94f1c92d80 publish additional docker tags (#975) 2023-02-22 13:06:26 +05:30
Prasath Mani
bbb2114918 Update README.md 2023-02-22 07:20:52 +05:30
Prasath Mani
e071b2372c Add External CDN resources configurable 2023-02-22 07:16:25 +05:30
fwiesweg
ba1b499d2b Allow configuration for strict CSPs and GDPR (#971) 2023-02-22 06:25:35 +05:30
Suyadi
6775bcb176 AceEditor: hide vertical ruler (#973) 2023-02-22 06:24:00 +05:30
Alessandro Marinuzzi
4b2aef8737 Added extensions and removed the duplicated entries (#968)
added new extensions used in different linux/windows environments and removed duplicate entries
2023-02-16 20:54:55 +05:30
Michael Gebetsroither
1eed63cf1b make upload chunk size configureable (#967)
nginx supports only 1MB per default
2023-02-16 16:18:40 +05:30
Oreloth
200d9d6d49 Fix french translation (#960)
Better and native french translation with official terms such as "haché" for hashing, which is the officiel term from PHP.
2023-02-05 10:35:07 +05:30
minghongg
cddd7eaab0 Deploy path traversal fix (#953)
Co-authored-by: root <root@chevaliers.lan>
2023-01-25 11:46:20 +05:30
Dmitry Efremov
dd1ba6795c Fixes ajax ability to handle requests when auth disabled (#952) 2023-01-25 08:23:45 +05:30
Dmitry Efremov
9c4d30d7b5 Fixes couple issues with confirmDailog (#951)
* Fixes naming for confirmDailog id, otherwise dialog won't work

* Removes destroying form as browser complains that it can't process request from disconnected form
2023-01-25 08:22:27 +05:30
Dmitry Efremov
12baf03ef5 Removes sed from Dockerfile (#948)
They were needed before because they changed example config.php so make it workable.
Now we don't have it and running sed against main file just removes a lot of code
and forces data path for directory
2023-01-24 08:04:37 +05:30
Prasath Mani
dc529dd590 Fix save settings not working #947 2023-01-22 02:06:14 +05:30
fbotp
69ccd952fc Bug fix: Delete confirm dialog will work wrong aflter cancel. (#942)
* Bug fix: Only delete first file/directory when clicking the delete button multiple times and canceling.

* Add variable name for delete dialog
2023-01-19 21:41:48 +05:30
Catalin
69495db9b4 Subfolder links fix (#945)
Download and Direct link problems when using with a subfolder, possible simple solution.
2023-01-19 21:41:00 +05:30
Prasath Mani
313acf1b78 Update README.md 2023-01-13 11:09:18 +05:30
Prasath Mani
ac672b832c update screenshot 2022-12-03 12:07:18 +05:30
Prasath Mani
789b98f136 Download and Direct link problems when using with a subfolder. #907 2022-12-03 06:17:55 +00:00
Prasath Mani
97fd394a0f Update README.md 2022-12-02 08:29:37 +05:30
Prasath Mani
8f2f65b9fc Bug Fix #904, #903, #900 2022-12-02 02:43:24 +00:00
武志伟
31b988db79 Translation supplement (#902)
* update zh-cn lang

* Translation supplement

* update zh-cn lang
2022-11-30 16:40:57 +05:30
武志伟
d09cc2f445 Complete all Chinese translations (#901) 2022-11-30 11:01:57 +05:30
Nguyễn Trần Chung
5a00707890 Update tinyfilemanager.php (#898) 2022-11-27 20:59:39 +05:30
muink
cfb9a57d5e Fix the problem of login failure when $root_url is defined (#896)
Fix the problem that `FM_ROOT_URL` and `$_SERVER['REQUEST_URI']` are repeated, causing login redirection to fail when `$root_url` is defined
2022-11-26 18:52:34 +05:30
Prasath Mani
652c05914f Update FUNDING.yml 2022-11-25 16:38:42 +05:30
Prasath Mani
e30ec1dfd2 update download buffer and fix #893 2022-11-25 07:00:19 +00:00
Prasath Mani
610cea8ecd Fix - #739, #887, #886, #884, #835 2022-11-25 03:09:46 +00:00
Michele Locati
d4019e6e10 Update Italian translations (#892) 2022-11-23 22:10:29 +05:30
Michele Locati
f20d3e9e06 Fix phpdoc types (#890) 2022-11-23 22:07:04 +05:30
Julien
c4ab436f6d Complete French translation (#885) 2022-11-22 06:27:33 +05:30
Prasath Mani
e5c78e8ab9 cosmetic changes and dark theme color update 2022-11-20 19:01:08 +05:30
Prasath Mani
f8cedbcf59 Fix Security related issues 2022-11-20 16:59:29 +05:30
Prasath Mani
df80b73436 Refactor Code and Update Doc 2022-11-20 15:04:25 +05:30
10 changed files with 3518 additions and 1565 deletions

2
.gitattributes vendored Normal file
View File

@@ -0,0 +1,2 @@
*.php text eol=lf
*.json text eol=lf

2
.github/FUNDING.yml vendored
View File

@@ -1,5 +1,5 @@
# These are supported funding model platforms
github: prasathmani
patreon: ccpprogrammers
open_collective: tinyfilemanager
ko_fi: tinyfilemanager

View File

@@ -13,7 +13,7 @@ jobs:
steps:
- name: Docker meta
id: meta
uses: docker/metadata-action@v3
uses: docker/metadata-action@v4
with:
images: |
${{ secrets.DOCKERHUB_USERNAME }}/tinyfilemanager
@@ -21,6 +21,8 @@ jobs:
type=ref,event=branch
type=ref,event=pr
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
@@ -35,4 +37,5 @@ jobs:
uses: docker/build-push-action@v2
with:
push: true
tags: ${{ steps.meta.outputs.tags }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

View File

@@ -12,7 +12,7 @@ FROM php:7.4-cli-alpine
# if run in China
# RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN apk add \
RUN apk add --no-cache \
libzip-dev \
oniguruma-dev
@@ -22,8 +22,5 @@ RUN docker-php-ext-install \
WORKDIR /var/www/html
COPY tinyfilemanager.php index.php
COPY config-sample.php config.php
RUN sed -i "s/\$root_path =.*;/\$root_path = \$_SERVER['DOCUMENT_ROOT'].'\/data';/g" config.php && \
sed -i "s/\$root_url = '';/\$root_url = 'data\/';/g" config.php
CMD ["sh", "-c", "php -S 0.0.0.0:80"]

103
README.md
View File

@@ -5,8 +5,13 @@
[![GitHub Release](https://img.shields.io/github/release/prasathmani/tinyfilemanager.svg?style=flat-square)](https://github.com/prasathmani/tinyfilemanager/releases)
[![GitHub License](https://img.shields.io/github/license/prasathmani/tinyfilemanager.svg?style=flat-square)](https://github.com/prasathmani/tinyfilemanager/blob/master/LICENSE)
[![Paypal](https://img.shields.io/badge/Donate-Paypal-lightgrey.svg?style=flat-square)](https://www.paypal.me/prasathmani)
![GitHub Sponsors](https://img.shields.io/github/sponsors/prasathmani)
> TinyFileManager is web based file manager and it is a simple, fast and small file manager with a single file, multi-language ready web application for storing, uploading, editing and managing files and folders online via web browser. The Application runs on PHP 5.5+, It allows the creation of multiple users and each user can have its own directory and a build-in support for managing text files with cloud9 IDE and it supports syntax highlighting for over 150+ languages and over 35+ themes.
> TinyFileManager is a versatile web-based PHP file manager designed for simplicity and efficiency. This lightweight single-file PHP application can be effortlessly integrated into any server directory, allowing users to store, upload, edit, and manage files and folders directly through their web browser.
With multi-language support and compatibility with PHP 5.5+, TinyFileManager enables the creation of individual user accounts, each with its dedicated directory. The platform also includes built-in functionality for handling text files using the Cloud9 IDE.
Featuring syntax highlighting for over 150 languages and more than 35 themes, TinyFileManager offers a comprehensive solution for file management in an online environment.
<sub>**Caution!** _Avoid utilizing this script as a standard file manager in public spaces. It is imperative to remove this script from the server after completing any tasks._</sub>
## Demo
@@ -37,90 +42,34 @@ Default username/password: **admin/admin@123** and **user/12345**.
To enable/disable authentication set `$use_auth` to true or false.
:information_source: Add your own configuration file `config.php` in the same folder to use as additional configuration file.
:information_source: Add your own configuration file [config.php](https://tinyfilemanager.github.io/config-sample.txt) in the same folder to use as additional configuration file.
:information_source: To work offline without CDN resources, use [offline](https://github.com/prasathmani/tinyfilemanager/tree/offline) branch
### :loudspeaker: Features
- :cd: Open Source, light and extremely simple
- :iphone: Mobile friendly view for touch devices
- :information_source: Basic features likes Create, Delete, Modify, View, Download, Copy and Move files
- :arrow_double_up: Ajax Upload, Ability to drag & drop, upload from URL, multiple files upload with file extensions filter
- :file_folder: Ability to create folders and files
- :gift: Ability to compress, extract files (`zip`, `tar`)
- :sunglasses: Support user permissions - based on session and each user root folder mapping
- :floppy_disk: Copy direct file URL
- :pencil2: Cloud9 IDE - Syntax highlighting for over `150+` languages, Over `35+` themes with your favorite programming style
- :page_facing_up: Google/Microsoft doc viewer helps you preview `PDF/DOC/XLS/PPT/etc`. 25 MB can be previewed with the Google Drive viewer
- :zap: Backup files and IP blacklist and whitelist
- :mag_right: Search - Search and filter files using `datatable js`
- :file_folder: Exclude folders and files from listing
- :globe_with_meridians: Multi-language(20+) support and for translations `translation.json` is file required
- :bangbang: lots more...
- :cd: **Open Source:** Lightweight, minimalist, and extremely simple to set up.
- :iphone: **Mobile Friendly:** Optimized for touch devices and mobile viewing.
- :information_source: **Core Features:** Easily create, delete, modify, view, download, copy, and move files.
- :arrow_double_up: **Advanced Upload Options:** Ajax-powered uploads with drag-and-drop support, URL imports, and multi-file uploads with extension filtering.
- :file_folder: **Folder & File Management:** Create and organize folders and files effortlessly.
- :gift: **Compression Tools:** Compress and extract files in `zip` and `tar` formats.
- :sunglasses: **User Permissions:** User-specific root folder mapping and session-based access control.
- :floppy_disk: **Direct URLs:** Easily copy direct URLs for files.
- :pencil2: **Code Editor:** Includes Cloud9 IDE with syntax highlighting for 150+ languages and 35+ themes.
- :page_facing_up: **Document Preview:** Google/Microsoft document viewer for PDF/DOC/XLS/PPT, supporting previews up to 25 MB.
- :zap: **Security Features:** Backup capabilities, IP blacklisting, and whitelisting.
- :mag_right: **Search Functionality:** Use `datatable.js` for fast file search and filtering.
- :file_folder: **Customizable Listings:** Exclude specific folders and files from directory views.
- :globe_with_meridians: **Multi-language Support:** Translations available in 35+ languages with `translation.json`.
- :bangbang: **And Much More!**
## Deploy by Docker
Make sure you have **already installed docker**, [Install reference](https://docs.docker.com/engine/install/)
> **Notice:** Your need an absolute path, and it will be served by tinyfilemanager.
>
> If you want to serve this project at **raspberry pi or another special platform**, you can download project and **build image by yourself**.
You can execute this following commands:
```shell
$ docker run -d -v /absolute/path:/var/www/html/data -p 80:80 --restart=always --name tinyfilemanager tinyfilemanager/tinyfilemanager:master
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
648dfba9c0ff tinyfilemanager/tinyfilemanager:master "docker-php-entrypoi…" 4 minutes ago Up 4 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp tinyfilemanager
```
Access `http://127.0.0.1/` and enter default username and password, then enjoy it.
DockerHub: [https://hub.docker.com/r/tinyfilemanager/tinyfilemanager](https://hub.docker.com/r/tinyfilemanager/tinyfilemanager)
#### How to change config within docker
Origin:
```php
// Root path for file manager
// use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
$root_path = $_SERVER['DOCUMENT_ROOT'];
// Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
// Will not working if $root_path will be outside of server document root
$root_url = '';
```
Modified:
```php
// Root path for file manager
// use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
$root_path = $_SERVER['DOCUMENT_ROOT'].'/data';
// Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
// Will not working if $root_path will be outside of server document root
$root_url = 'data/';
```
Then, change another config what you want, and add a new volume `-v /absolute/path/config.php:/var/www/html/config.php` in `docker run` command, like this:
```shell
$ docker run -d -v /absolute/path:/var/www/html/data -v /absolute/path/config.php:/var/www/html/config.php -p 80:80 --restart=always --name tinyfilemanager tinyfilemanager/tinyfilemanager:master
```
#### Stop running
If you want to stop a running docker service, or you want to restart a service, you should stop it first, or you got `docker: Error response from daemon: Conflict. The container name "/tinyfilemanager" is already in use by container ...` problem. You can execute this command:
```shell
$ docker rm -f tinyfilemanager
```
### [Deploy by Docker](https://github.com/prasathmani/tinyfilemanager/wiki/Deploy-by-Docker)
### <a name=license></a>License, Credit
- Available under the [GNU license](https://github.com/prasathmani/tinyfilemanager/blob/master/LICENSE)
- Original concept and development by github.com/alexantr/filemanager
- CDN Used - _jQuery, Bootstrap, Font Awesome, Highlight js, ace js, DropZone js, ekko-lightbox js, and DataTable js_
- CDN Used - _jQuery, Bootstrap, Font Awesome, Highlight js, ace js, DropZone js, and DataTable js_
- To report a bug or request a feature, please file an [issue](https://github.com/prasathmani/tinyfilemanager/issues)
- [Contributors](https://github.com/prasathmani/tinyfilemanager/wiki/Authors-and-Contributors)

View File

@@ -4,7 +4,7 @@
The team takes security bugs seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions.
To report a security issue, email ccpprogrammers[at]gmail.com and include the word "SECURITY" in the subject line.
To report a security issue, email ccpprogrammers[at]gmail[dot]com and include the word "SECURITY" in the subject line.
The team will send a response indicating the next steps in handling your report. After the initial reply to your report you will be kept informed of the progress towards a fix and full announcement.

20
docker-compose.yml Normal file
View File

@@ -0,0 +1,20 @@
services:
tinyfilemanager:
build: . # Uncomment if you want to build locally instead of pulling
# image: tinyfilemanager/tinyfilemanager:latest ### If you want to run a Docker container on an image from Docker Hub, comment on the upper line 'build: .'
container_name: tinyfilemanager
restart: unless-stopped
ports:
- "8080:80"
volumes:
- ./data:/var/www/html/data ### You can change "./data:" to your path if you want to keep your data in a dedicated directory.
- ./config.php:/var/www/html/config.php ### Uncomment if you are using config.php
environment:
TZ: UTC
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost/"]
interval: 30s
timeout: 10s
retries: 3

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 KiB

After

Width:  |  Height:  |  Size: 2.4 MiB

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff