File manager

Browsing, editing and uploading application files from the panel, and the sandbox boundaries it enforces.

8 min read12 sections

Browse, edit, upload and manage the application's files directly in the browser — no SFTP client, no SSH session.

Getting here: Servers → a server → Applications → an application → File Manager

Visible to team members only with the Application_Details_FileManager permission.

1. Where you are, and where you can go

The File Manager opens scoped to this application's root directory. You cannot navigate above it — the Up one level button stops there, and the server refuses any path outside it outright:

That boundary is enforced on the server, not just hidden in the interface, so it holds regardless of what a request asks for. Other applications on the same server, and the system directories around them, are not reachable from here.

The htdocs rule

Inside the application root, editing is only enabled inside htdocs.

Where you areWhat you can do
The application root, or any folder outside htdocsRead-only — browse, sort, navigate
htdocs, or anything beneath itFull editing

Outside htdocs the Actions column disappears, New Folder, New File and Upload are hidden, and the permission values stop being clickable. This is deliberate: htdocs is your application's own content, and the folders beside it are managed by the platform.

If the toolbar looks unexpectedly bare, check the path — you are almost certainly one level above htdocs.

Team members cannot delete

Deleting — and the Trash view with it — requires more than the htdocs rule: a user with the team member role never sees the delete action or the trash, even inside htdocs. They can create, edit and upload; they cannot remove.

2. The toolbar

ControlNotes
Up one levelDisabled at the application root
Current pathShown in full on hover when truncated
TrashDeleted items — only for users who can delete
RefreshRe-reads the current folder
New Folder / New File / UploadInside htdocs only

Selecting one or more rows adds a second set:

ControlWhat it does
DeleteTrash or permanently remove the selection
ExtractOnly when exactly one .zip or .tar.gz is selected
CopyCopy the selection elsewhere
CompressZip the selection into one archive
MoveMove the selection elsewhere
Download (n)Download the selection as a single ZIP

3. The file list

ColumnSortableNotes
NameClick a folder to open it, a file to edit it
SizeB / KB / MB / GB
Last ModifiedToday, 14:32 for today, full date otherwise
PermissionsClick the value to change it
ActionsPer-row operations

Clicking a column header sorts by it; clicking again reverses.

Three kinds of entry, distinguished by icon:

IconType
🟡 Yellow folderDirectory
⬜ Grey fileRegular file
🔵 Blue linkSymlink — shown as name → target

A symlink opens what it points at. In a Laravel application the storage link is the one you will meet most often.

An empty folder reads Directory is empty.

4. Per-row actions

ActionNotes
Copy LinkSee the caution below
ViewRead-only viewer — files only, not archives
EditOpens the editor
RenameNew name in the same folder
MoveTo an absolute destination path
CopyTo an absolute destination path
CompressInto a .zip
ExtractArchives only
DownloadA file directly; a folder is zipped first
DeleteTrash or permanent

5. Viewing and editing files

Both open a full Monaco editor — the same engine as VS Code — with syntax highlighting chosen from the file extension, word wrap on, and a dark theme.

  • View is read-only, with Close.
  • Edit offers Cancel and Save, confirming File saved successfully.

Archives and directories have no view or edit action; there is nothing sensible to show.

The public-folder confirmation

Opening a file for editing under htdocs or public first asks:

This is worth reading rather than clicking through. Files in that folder are served to the internet. A syntax error there takes the site down immediately, and a file placed there is reachable by anyone who guesses the URL. The prompt exists because that folder is the one where a mistake is instantly public.

6. Uploading

Three ways, all landing in the current folder:

Upload opens a dialog where you choose a target path, then add files or a whole folder. Selected items are listed with a Remove beside each, and the dialog shows No files selected yet. until you add something.

Folder upload preserves structure — subdirectories are recreated on the server rather than being flattened.

Drag and drop anywhere on the page uploads to the folder you are viewing. The page highlights while you drag.

Uploads are processed one file at a time, with a progress banner, ending in Upload complete. A failure on one file is reported by name and does not stop the rest.

7. Copy, Move, Compress, Extract

All four ask for an absolute path, pre-filled with the current folder.

OperationFieldsNotes
Copy FilesDestination PathMust differ from the current path
Move FilesDestination Path
Compress FilesDestination Path, Archive NameDefaults to the file or folder name with .zip
Extract ArchiveDestination Path, Output NameDefaults to the archive name without its extension

Extract handles .zip and .tar.gz.

Because these take a path rather than a picker, type it carefully — a mistyped destination is a valid path, and the operation will happily use it. Destinations outside the application root are refused by the server.

8. Changing permissions

Clicking a permission value opens Change Permissions, with two ways to set it:

  • Octal — three digits, 07 each, defaulting to 755
  • A checkbox grid — read, write and execute for owner, group and other, which updates the octal value as you click
ValueUse
755Directories, and executable scripts
644Ordinary files
775 / 664When the web server also needs to write — uploads, cache, logs

9. Deleting, and the Trash

The delete dialog opens with a Move to Trash toggle on:

ToggleBehaviour
On (default)Move "file" to trash? You can restore it later.
OffAre you sure you want to permanently delete…? This action cannot be undone, with a red warning and a red confirm button

The Trash view

Reached from the toolbar, listing each deleted item with:

Column
Original PathWhere it came from — restore puts it back there
DeletedWhen
Restore / Delete ForeverPer item, or in bulk after selecting

Empty: Trash is empty — files moved to trash will appear here.

10. Sensible practice

  • Copy before you edit. One click, and it is the difference between a typo and an outage.
  • Take a backup before bulk changes. The Backup & Restore tab exists for exactly this.
  • Upload an archive and extract it rather than uploading many files.
  • Check the path before acting. Move and Copy accept any absolute path inside the application root, including a wrong one.
  • Leave 777 alone.
  • Don't rely on the trash.
  • Use the editor for small changes. For anything substantial, work locally and deploy — the editor has no history, no diff and no rollback.
  • Be careful with .env. It is editable here, it holds your credentials, and a mistake in it takes the application down.

11. Common problems

ProblemCause
No Upload, New File or New Folder buttonsYou are outside htdocs — navigate into it
No Actions columnSame reason
No delete option anywhereYou are a team member; deletion is not available to that role
Cannot go up a levelYou are at the application root — that is the boundary
Access denied: Path is outside application root A destination path pointed outside the application
Copied link doesn't work for a colleagueIt is a panel link, not a public URL — they need panel access
Site broke after an editA syntax error in a served file — restore from Backup & Restore, or fix it in the editor
Uploaded files but the site doesn't see themCheck they landed in htdocs, and check ownership and permissions
Uploads fail with a permission errorThe target directory is not writable — 775 on the directory
Trash is empty but I deleted somethingEither it was a permanent delete, or the server rebooted
Extract did nothingOnly .zip and .tar.gz are supported
Large folder download is slowFolders are zipped on the server before downloading
A file shows an arrow and another nameIt is a symlink; it opens the target

12. How this relates to other places

WhereScope
File Manager (this tab)Browse and edit this application's files in the browser
Access tabSFTP accounts, SSH keys, the browser terminal, and folder permissions in bulk
Backup & RestoreSnapshot and roll back everything here
Domain → Virtual Host ConfigThe web server configuration, which lives outside the application root
LogsWhy a change you made here broke something

The division worth remembering: File Manager is for a few files; SFTP is for many. For a large deployment, use SFTP or Git rather than the browser.

Something here not matching what you see in the panel?

Tell us
Start your journey today

Ready to take control
of your hosting?

Deploy servers, run self-hosted business apps, and keep your data on your own VPS — with a dedicated DevOps manager by your side.

No lock-in contracts
No credit card required
Dedicated DevOps manager