Server part for update and backup management
|
|
пре 1 месец | |
|---|---|---|
| admin | пре 1 месец | |
| api | пре 1 месец | |
| assets | пре 1 месец | |
| client-docs | пре 1 месец | |
| client-package | пре 1 месец | |
| docs | пре 1 месец | |
| includes | пре 1 месец | |
| scripts | пре 1 месец | |
| .gitignore | пре 1 месец | |
| .htaccess | пре 1 месец | |
| README.md | пре 1 месец | |
| config.sample.php | пре 1 месец | |
| index.php | пре 1 месец |
Update- und Backup-Server für PHP-Projekte, plus ein weitergebbares Client-Paket.
Mehrere eigenständige PHP-Projekte brauchen dieselben zwei Dinge: eine Möglichkeit,
neue Versionen einzuspielen, und regelmäßige Sicherungen der Betriebsdaten. manage
stellt beides zentral bereit, statt es in jedem Projekt erneut zu bauen.
Eine Installation betreut ein Produkt mit einer überschaubaren Zahl von
Instanzen. Für ein weiteres Produkt wird manage erneut ausgerollt.
.htaccess oder nginx mit gesetzten Sperren)storage/Keine Datenbank, kein Composer, kein Build-Schritt, keine externen Bibliotheken.
config.php (aus config.sample.php)admin/api/v1/includes/storage/ (nicht öffentlich)client-package/config.sample.php nach config.php kopieren.MANAGE_ADMIN_PASSWORD_HASH eintragen:
php -r 'echo password_hash("…", PASSWORD_DEFAULT), PHP_EOL;'MANAGE_PUBLIC_URL auf die absolute Adresse dieser Installation setzen.MANAGE_PRODUCT_NAME und MANAGE_PACKAGE_PREFIX auf das betreute Produkt setzen.storage/ sicherstellen.admin/login.php öffnen und unter Einstellungen → Diagnose prüfen, dass alles
Wesentliche stimmt.Ausführlich: docs/SERVER_SETUP.md.
./scripts/build-client-package.sh --server-url https://manage.example.orgmanage-client/ einkopieren, config.php anlegen,
php manage-client/bin/manage-client.php status ausführen.Die vollständige Anleitung dafür liegt im Paket selbst (client-package/README.md), damit die empfangende Seite keinen Zugriff auf dieses Repository braucht.
Serverseitig, in docs/:
Für Projekte, in client-package/docs/: Quickstart, Integration, Konfiguration,
Funktions-API, Backup-Quellen, Paketbau, Post-Update-Hooks, Protokoll, Fehlersuche,
Sicherheit.
Im Browser lesbar über docs/index.php beziehungsweise client-package/docs/index.php
(Markdown wird mit dem mitgelieferten marked gerendert).
client-docs/ veröffentlicht den gesamten Inhalt von client-package/ als eine
Seite: alle Kapitel, den vollständigen Quellcode und die Schnittstelle als OpenAPI.
Anders als admin/ und api/v1/ ist dieser Ordner ohne Anmeldung erreichbar – er ist
dafür da, weitergegeben zu werden, damit ein Projekt eingebunden werden kann, ohne
vorher ein ZIP zu verschicken.
| Adresse | Inhalt |
|---|---|
client-docs/ |
das Handbuch, zum Lesen |
client-docs/llms.txt |
dasselbe als reiner Text – diese Adresse bekommt ein LLM |
client-docs/api.php |
Protokoll v1 in Swagger UI |
client-docs/openapi.php |
das OpenAPI-Dokument allein, für Codegeneratoren |
Der Inhalt wird bei jedem Aufruf aus client-package/ gelesen; es gibt nichts zu
bauen und nichts nachzuziehen. manage-client/config.php ist von der Veröffentlichung
ausgenommen, damit ein lokal angelegtes Token nicht öffentlich wird.
marked und Swagger UI liegen unter client-docs/assets/ im Repository. Es wird kein
fremder Server kontaktiert, auch nicht für Schriften oder Symbole.