| Server IP : 146.190.157.162 / Your IP : 216.73.217.6 Web Server : Apache System : Linux ubuntu-s-2vcpu-4gb-amd-sfo3-01-KIT-DIGITAL 6.5.0-44-generic #44-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 7 15:10:09 UTC 2024 x86_64 User : businessweek ( 639) PHP Version : 8.2.10-2ubuntu2.2 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_signal,pcntl_signal_dispatch,pcntl_getpriority,pcntl_setpriority,dl,putenv,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /tmp/ |
Upload File : |
#!/bin/bash
# force-migrate-broken.sh — migra a FPM sitios rotos (sin wp-config.php) para unificar arquitectura
PHP_VERSION="8.2"
POOL_DIR="/etc/php/${PHP_VERSION}/fpm/pool.d"
SITES_DIR="/etc/apache2/sites-enabled"
LOGFILE="/root/fpm-force-migration-$(date +%Y%m%d-%H%M%S).log"
echo "=== Migración forzada (sitios rotos) — $(date) ===" | tee -a "$LOGFILE"
while IFS= read -r SITE; do
echo "--- Procesando (forzado): $SITE ---" | tee -a "$LOGFILE"
cat > "${POOL_DIR}/${SITE}.conf" << EOF
[${SITE}]
user = ${SITE}
group = ${SITE}
listen = /run/php/php${PHP_VERSION}-fpm-${SITE}.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
pm = ondemand
pm.max_children = 3
pm.process_idle_timeout = 30s
pm.max_requests = 500
EOF
VHOST_FILES=$(grep -l "SuexecUserGroup ${SITE} ${SITE}" ${SITES_DIR}/*.conf 2>/dev/null)
if [ -z "$VHOST_FILES" ]; then
echo " ⚠ No se encontró vhost para $SITE — SALTEADO" | tee -a "$LOGFILE"
continue
fi
for VHOST in $VHOST_FILES; do
cp "$VHOST" "${VHOST}.bak-$(date +%Y%m%d%H%M%S)"
if ! grep -q "fpm-${SITE}.sock" "$VHOST"; then
sed -i "/<\/VirtualHost>/i\\
<FilesMatch \\\\.php\$>\\
SetHandler \"proxy:unix:/run/php/php${PHP_VERSION}-fpm-${SITE}.sock|fcgi://localhost\"\\
</FilesMatch>" "$VHOST"
echo " ✓ Vhost actualizado: $VHOST" | tee -a "$LOGFILE"
fi
done
done < /root/fpm-broken-sites.txt
if ! apache2ctl configtest 2>>"$LOGFILE"; then
echo "❌ ERROR DE SINTAXIS — ABORTADO. Revisá $LOGFILE" | tee -a "$LOGFILE"
exit 1
fi
systemctl reload php${PHP_VERSION}-fpm
systemctl reload apache2
echo "=== Listo. Estos 12 ya están en FPM, pendientes de arreglar wp-config.php ===" | tee -a "$LOGFILE"
echo "Log completo: $LOGFILE"