generated from theradcoza/Laravel-Docker-Dev-Template
Initial commit
This commit is contained in:
43
deploy/scripts/fix-permissions.sh
Normal file
43
deploy/scripts/fix-permissions.sh
Normal file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Fix Laravel file permissions
|
||||
# Usage: ./fix-permissions.sh /var/www/your-app
|
||||
|
||||
set -e
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: $0 /path/to/laravel/app"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
APP_PATH="$1"
|
||||
|
||||
if [ ! -d "$APP_PATH" ]; then
|
||||
echo "Error: Directory $APP_PATH does not exist"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Fixing permissions for: $APP_PATH"
|
||||
|
||||
# Set ownership
|
||||
sudo chown -R www-data:www-data "$APP_PATH"
|
||||
|
||||
# Set directory permissions
|
||||
sudo find "$APP_PATH" -type d -exec chmod 755 {} \;
|
||||
|
||||
# Set file permissions
|
||||
sudo find "$APP_PATH" -type f -exec chmod 644 {} \;
|
||||
|
||||
# Make storage and cache writable
|
||||
sudo chmod -R 775 "$APP_PATH/storage"
|
||||
sudo chmod -R 775 "$APP_PATH/bootstrap/cache"
|
||||
|
||||
# Set ACL for current user to maintain access
|
||||
if command -v setfacl &> /dev/null; then
|
||||
sudo setfacl -Rm u:$(whoami):rwx "$APP_PATH/storage"
|
||||
sudo setfacl -Rm u:$(whoami):rwx "$APP_PATH/bootstrap/cache"
|
||||
sudo setfacl -dRm u:$(whoami):rwx "$APP_PATH/storage"
|
||||
sudo setfacl -dRm u:$(whoami):rwx "$APP_PATH/bootstrap/cache"
|
||||
fi
|
||||
|
||||
echo "Permissions fixed successfully!"
|
||||
Reference in New Issue
Block a user