Initial commit - Church Music Database
This commit is contained in:
99
new-site/fix-403-issue.sh
Normal file
99
new-site/fix-403-issue.sh
Normal file
@@ -0,0 +1,99 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "======================================"
|
||||
echo " FIXING 403 FORBIDDEN - DELETE ISSUE"
|
||||
echo "======================================"
|
||||
echo ""
|
||||
|
||||
# Step 1: Deploy Nginx config
|
||||
echo "Step 1: Deploying Nginx configuration..."
|
||||
sudo cp /media/pts/Website/Church_HOP_MusicData/new-site/nginx-ssl.conf /etc/nginx/sites-available/church-music-ssl
|
||||
sudo ln -sf /etc/nginx/sites-available/church-music-ssl /etc/nginx/sites-enabled/church-music-ssl
|
||||
|
||||
# Remove any conflicting configs
|
||||
sudo rm -f /etc/nginx/sites-enabled/default 2>/dev/null
|
||||
sudo rm -f /etc/nginx/sites-enabled/church-music 2>/dev/null
|
||||
|
||||
echo "Testing Nginx config..."
|
||||
if sudo nginx -t 2>&1; then
|
||||
echo "✅ Nginx config valid"
|
||||
else
|
||||
echo "❌ Nginx config has errors!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Step 2: Reload Nginx
|
||||
echo ""
|
||||
echo "Step 2: Reloading Nginx..."
|
||||
sudo systemctl reload nginx
|
||||
echo "✅ Nginx reloaded"
|
||||
|
||||
# Step 3: Restart Backend
|
||||
echo ""
|
||||
echo "Step 3: Restarting backend..."
|
||||
sudo systemctl restart church-music-backend
|
||||
sleep 3
|
||||
|
||||
if sudo systemctl is-active --quiet church-music-backend; then
|
||||
echo "✅ Backend is running"
|
||||
else
|
||||
echo "❌ Backend failed to start!"
|
||||
sudo journalctl -u church-music-backend -n 20 --no-pager
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Step 4: Test health
|
||||
echo ""
|
||||
echo "Step 4: Testing endpoints..."
|
||||
echo ""
|
||||
|
||||
HEALTH=$(curl -s http://localhost:8080/health)
|
||||
echo "Backend health: $HEALTH"
|
||||
|
||||
# Step 5: Test DELETE via HTTPS
|
||||
echo ""
|
||||
echo "Step 5: Testing DELETE endpoint..."
|
||||
|
||||
# First login
|
||||
TOKEN=$(curl -s -X POST https://houseofprayer.ddns.net/api/auth/login \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"username":"hop","password":"hopWorship2024"}' | grep -o '"token":"[^"]*"' | cut -d'"' -f4)
|
||||
|
||||
if [ -z "$TOKEN" ]; then
|
||||
echo "❌ Could not get auth token"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Got token: ${TOKEN:0:30}..."
|
||||
|
||||
# Test DELETE
|
||||
RESPONSE=$(curl -s -w "\n%{http_code}" -X DELETE \
|
||||
"https://houseofprayer.ddns.net/api/lists/24474ea3-6f34-4704-ac48-a80e1225d79e/songs/9831e027-aeb1-48a0-8763-fd3120f29692" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json")
|
||||
|
||||
HTTP_CODE=$(echo "$RESPONSE" | tail -n1)
|
||||
BODY=$(echo "$RESPONSE" | head -n-1)
|
||||
|
||||
echo ""
|
||||
echo "DELETE Response:"
|
||||
echo " Status: $HTTP_CODE"
|
||||
echo " Body: $BODY"
|
||||
|
||||
if [ "$HTTP_CODE" = "200" ]; then
|
||||
echo ""
|
||||
echo "✅ SUCCESS! DELETE endpoint is working!"
|
||||
echo "Try removing a song from the worship list now!"
|
||||
elif [ "$HTTP_CODE" = "403" ]; then
|
||||
echo ""
|
||||
echo "❌ Still getting 403 - check Nginx error logs:"
|
||||
sudo tail -10 /var/log/nginx/error.log
|
||||
else
|
||||
echo ""
|
||||
echo "⚠️ Got status: $HTTP_CODE"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "======================================"
|
||||
echo "Done!"
|
||||
echo "======================================"
|
||||
Reference in New Issue
Block a user