Secure a Laravel App Before Production: Tested Checklist
Last updated: 8 November 2026. See the update log at the end.Laravel gives you safe defaults...
Linux file permissions
The owner can read; the group and everyone else can do nothing.
Read-only private files, such as an AWS .pem key: only the owner can read them.
Read = 4, write = 2, execute = 1. Each digit is the sum for one group of users.
| Who | Digit | Symbolic | Read | Write | Execute |
|---|---|---|---|---|---|
| Owner (u) | 4 | r-- | Yes | No | No |
| Group (g) | 0 | --- | No | No | No |
| Others (o) | 0 | --- | No | No | No |
On a folder, read lists its contents, write adds or deletes files in it, and execute lets you open it (cd into it).
One file or folder, a folder with everything inside it, or only the files inside a folder:
chmod 400 file.php
chmod -R 400 folder/
find folder/ -type f -exec chmod 400 {} +
In cPanel: File Manager → right-click → Change Permissions, and tick the boxes until the number shows 400.
Tick or untick the boxes to see the number, the symbolic form and the command.
| Read | Write | Execute | |
|---|---|---|---|
| Owner | |||
| Group | |||
| Everyone else |
Common values
Symbolic
Each digit is the sum of read (4), write (2) and execute (1), for the owner, the group and everyone else. 400 = 4 / 0 / 0, so the owner can read; the group and everyone else can do nothing (r--------).
400 suits files. A folder needs execute before anyone can open it, so folders usually get 755 (or 775 when your group must write).
In File Manager, right-click the file or folder, choose Change Permissions, and tick the boxes so the number shows 400. Over SSH: chmod 400 path (add -R to include everything inside a folder).
Last updated: 8 November 2026. See the update log at the end.Laravel gives you safe defaults...
A slow Docker build usually has one of a few causes: you are sending far more...
People ask this as if they were rivals, and they are not. Docker packages your application...
We use cookies to improve your experience and analyze traffic. By continuing, you agree to our Privacy Policy.