Skip to content

File Permissions

Shop Craft needs write access to certain folders to store uploaded files, cached data, and log files. If these folders do not have the correct permissions, you may see errors during or after installation.

Required Writable Folders

The following folders (and all their contents) must be writable by the web server:

FolderPurposeRequired Permission
storage/Logs, cached files, uploaded images, session data755 or 775
bootstrap/cache/Application bootstrap cache755 or 775

What Do These Numbers Mean?

  • 755 means the owner can read, write, and execute; everyone else can read and execute
  • 775 means the owner and group can read, write, and execute; everyone else can read and execute

On most shared hosting, 755 is sufficient. If you still see permission errors with 755, try 775.

Setting Permissions in cPanel File Manager

  1. Log in to cPanel
  2. Open File Manager
  3. Navigate to your Shop Craft installation directory

For the storage/ folder:

  1. Find the storage folder in your Shop Craft directory
  2. Right-click on it and select Change Permissions
  3. Set the permission to 755 (check the boxes for Owner: Read, Write, Execute; Group: Read, Execute; World: Read, Execute)
  4. Check the box for Recurse into subdirectories (if available)
  5. Click Change Permissions to save

For the bootstrap/cache/ folder:

  1. Navigate into the bootstrap folder
  2. Find the cache folder
  3. Right-click and select Change Permissions
  4. Set to 755 (same as above)
  5. Click Change Permissions to save

Setting Permissions via FTP

If you prefer using an FTP client (like FileZilla):

  1. Connect to your server via FTP
  2. Navigate to your Shop Craft directory
  3. Right-click on the storage folder
  4. Select File permissions (or Properties > Permissions)
  5. Enter 755 in the numeric value field
  6. Check Recurse into subdirectories
  7. Click OK
  8. Repeat for the bootstrap/cache/ folder

Common Permission Errors

"The stream or file ... could not be opened"

This error means the storage/logs/ directory is not writable. Set the storage/ folder permissions to 755 or 775 as described above.

"Failed to open stream: Permission denied"

This usually means storage/framework/ or bootstrap/cache/ is not writable. Apply 755 permissions to both the storage/ and bootstrap/cache/ folders.

"Unable to write to directory" during image upload

The storage/app/public/ directory needs to be writable for product image uploads. This is covered when you set 755 on the entire storage/ folder recursively.

Still Having Issues?

If setting permissions to 755 does not resolve the error, try 775. If that also does not work, contact your hosting provider — some servers have specific permission requirements.

Never Use 777

Setting permissions to 777 (read, write, execute for everyone) is a security risk. It allows any user on the shared server to read and modify your files. Avoid 777 even if it "works" — use 755 or 775 instead.

Shop Craft Documentation