Refactor: PHP-Built-in-Server durch TypeScript-Binary (Bun Runtime) ersetzt
- src/*.ts: Port von mcp/*.php (helpers, tools, server) - Bun.serve() statt php -S — production-grade HTTP, POST funktioniert - dist/mua-1.0.0-x86_64-1.txz: Slackware-Paket (Binary + rc.mua + mua.page + PHP-Helper) - plugin/mua.plg: .txz-Installation via upgradepkg - scripts/rc.mua: Binary statt php -S - scripts/mua.page: Binary-Info statt PHP-Version - scripts/package.sh: .txz-Builder Fix: MCP-POST-Endpunkt lieferte leeren Body (php -S Limitation). Bun.serve() löst das Problem.
This commit is contained in:
+7
-11
@@ -3,30 +3,26 @@
|
||||
# SysVinit-Service-Script (rc.mua)
|
||||
# Unraid nutzt SysVinit, kein systemd.
|
||||
# Wird installiert nach /etc/rc.d/rc.mua
|
||||
#
|
||||
# Läuft das kompilierte TypeScript-Binary (Bun Runtime) —
|
||||
# kein PHP-Built-in-Server mehr.
|
||||
|
||||
PLUGIN_DIR="/usr/local/emhttp/plugins/mua"
|
||||
SERVER="$PLUGIN_DIR/mcp/server.php"
|
||||
DAEMON="/usr/local/bin/mua"
|
||||
PIDFILE="/var/run/mua.pid"
|
||||
LOGFILE="/var/log/plugins/mua.log"
|
||||
PORT=3002
|
||||
PHP_BIN="/usr/bin/php"
|
||||
|
||||
# PHP-Binary finden (Fallback)
|
||||
if [ ! -x "$PHP_BIN" ]; then
|
||||
PHP_BIN=$(command -v php 2>/dev/null)
|
||||
fi
|
||||
|
||||
start() {
|
||||
if [ -f "$PIDFILE" ] && kill -0 "$(cat "$PIDFILE")" 2>/dev/null; then
|
||||
echo " MUA läuft bereits (PID $(cat "$PIDFILE"))"
|
||||
return 0
|
||||
fi
|
||||
if [ ! -f "$SERVER" ]; then
|
||||
echo " FEHLER: Server-Datei nicht gefunden: $SERVER"
|
||||
if [ ! -x "$DAEMON" ]; then
|
||||
echo " FEHLER: Binary nicht gefunden: $DAEMON"
|
||||
return 1
|
||||
fi
|
||||
# Server starten (detached)
|
||||
nohup "$PHP_BIN" -S 0.0.0.0:$PORT "$SERVER" >> "$LOGFILE" 2>&1 &
|
||||
MUA_PORT=$PORT nohup "$DAEMON" >> "$LOGFILE" 2>&1 &
|
||||
echo $! > "$PIDFILE"
|
||||
sleep 1
|
||||
if kill -0 "$(cat "$PIDFILE")" 2>/dev/null; then
|
||||
|
||||
Reference in New Issue
Block a user