feat(setup): Systemcheck und Upload-Paket fuer klassisches Webhosting
Auf Shared Hosting gibt es keine Kommandozeile - ohne Anzeige laesst sich dort nicht feststellen, ob etwa gd fehlt, die PHP-Version zu alt ist oder data/ nicht beschreibbar ist. Der Setup-Assistent prueft das jetzt und listet es auf; im Dashboard meldet sich die Pruefung spaeter nur noch, wenn etwas nicht stimmt. Fehlende Pflichtbausteine sind Fehler, fehlende Kuer (intl, imagick, cURL) nur Hinweise mit Angabe, was dadurch entfaellt. build-release.sh erzeugt das Upload-Paket: Abhaengigkeiten ohne Entwicklungspakete, ohne Tests und Docker-Dateien. Dabei faellt eine 16 MB grosse Schriftart aus endroid/qr-code weg, die ausschliesslich fuer Beschriftungen unter dem QR-Code gebraucht wird - die erzeugt diese Anwendung nicht. Das Paket schrumpft damit von 18 MB auf 1 MB. Sollte spaeter doch eine Beschriftung dazukommen, erkennt das Skript das und behaelt die Datei. Die Variante ohne eigenen Webroot (alles liegt im Domainverzeichnis, die .htaccess im Stammverzeichnis leitet nach public/ um) war bisher gebaut, aber nie erprobt. Sie ist jetzt gegen eine Hoster-Simulation getestet: Ersteinrichtung, Kurzlinks, Weiterleitung, QR-Codes, Statistik und die Sperren fuer src/, vendor/, data/ und .env.
This commit is contained in:
@@ -10,10 +10,42 @@
|
||||
*/
|
||||
|
||||
use App\Repository\LinkRepository;
|
||||
use App\Service\SystemCheck;
|
||||
use App\Support\ShortDomain;
|
||||
|
||||
$fallbackBase = rtrim($config->baseUrl(), '/');
|
||||
?>
|
||||
<?php if (($systemProblems ?? []) !== []):
|
||||
$hatFehler = false;
|
||||
foreach ($systemProblems as $problem) {
|
||||
if ($problem['status'] === SystemCheck::ERROR) {
|
||||
$hatFehler = true;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<section class="card check-result check-result--<?= $hatFehler ? 'error' : 'warn' ?>">
|
||||
<div class="check-result__head">
|
||||
<span class="check-result__icon" aria-hidden="true"><?= $hatFehler ? '×' : '!' ?></span>
|
||||
<div>
|
||||
<h2>Hinweise zum Server</h2>
|
||||
<p class="check-result__summary">
|
||||
<?= $hatFehler
|
||||
? 'Es fehlt etwas, das die Anwendung braucht.'
|
||||
: 'Alles läuft – einzelne Zusatzfunktionen stehen aber nicht zur Verfügung.' ?>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="check-list">
|
||||
<?php foreach ($systemProblems as $problem): ?>
|
||||
<li class="check-list__item check-list__item--<?= $problem['status'] === SystemCheck::ERROR ? 'error' : 'warn' ?>">
|
||||
<span class="check-list__icon" aria-hidden="true"><?= $problem['status'] === SystemCheck::ERROR ? '×' : '!' ?></span>
|
||||
<span class="check-list__label"><?= $e($problem['label']) ?></span>
|
||||
<span class="check-list__text"><?= $e($problem['text']) ?></span>
|
||||
</li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
</section>
|
||||
<?php endif; ?>
|
||||
<div class="page-head">
|
||||
<div>
|
||||
<h1>Übersicht</h1>
|
||||
|
||||
Reference in New Issue
Block a user