Göggel Servers¶
Generelles¶
httpdocssollte nicht durch PHP beschrieben werden.- Applikationsverzeichnisse wie
shopsind daher immutable (unveränderbar) - Uploads, Logs, Locks und temporäre Dateien liegen primär unter
/var/www/shared/private/. - Vhost-spezifische Runtime-Dateien liegen alternativ unter
<vhost>/var/. - Öffentliche Assets, die auch über
cdn.goeggel-shop.comerreichbar sind in/var/www/shared/public/.
Move Files Between Vhosts¶
- In Vhost A per SSH einloggen.
- Ordner als Archiv packen.
- Archiv nach
/var/www/shared/private/uploads/kopieren. - In Vhost B per SSH einloggen.
- Archiv aus
/var/www/shared/private/uploads/an das Ziel kopieren und entpacken.
Server Folder Structure¶
Keine Sticky-Node-Configuration:
Http Request werden von wechselnden Nodes bedient. Also aufpassen bei lokal geschriebene Dateien var/www/var/temp/, die sind nur innerhalb eines Programmablaufs zuverlässig.
/var/www/
├── shared/ # NTFS, cross-vhost storage
│ ├── public/ # CDN / public assets
│ │ ├── images/ # watermarks, product images, icons
│ │ ├── pdf/ # reklamationsdoks, dokumentationen, temp pdf
│ │ ├── content/ # sis-header/logo, startseite-banner, infoanzeige
│ │ ├── html/ # fracht, hilfe seiten
│ │ ├── media/ # downloads, adressbuch, specials (gewinnspiele)
│ │ └── uploads/ # user uploads (logos, etc)
│ └── private/ # not web-accessible
│ ├── config/ # database credentials
│ ├── import/
│ │ ├── docs/ # rechnungsdokumente import
│ │ │ ├── inbox_rsync/ # eingang (via rsync ionos-data-hub)
│ │ │ └── processed/ # cron-process-docs | processed backup | *.tar.gz
│ │ ├── backup/
│ │ │ ├── worker_backup/ # wawi-import-worker | import backup | *.tar.gz
│ │ │ ├── checker_processed/ # wawi-import-checker | processed backup | *.dat,
│ │ │ ├── checker_processing/ # wawi-import-checker | processing backup | *.tar.gz
│ │ │ └── order_export/ # wawi-export-orders | order export backups | *.tar.gz
│ │ ├── pending/ # wawi-import-checker | 1: ready to be processed
│ │ ├── processing/ # wawi-import-checker | 2: during process
│ │ ├── processed/ # wawi-import-checker | 3: processed files
│ │ ├── failed/ # wawi-import-checker | 0: failed to process
│ │ └── worker_queue/ # wawi-import-worker | tarballs ready to process
│ │ └── data_%d/
│ │ └── ___done/ # wawi-imported-worker | originale tarballs | *.tar
│ ├── locks/ # cronjob .locks
│ ├── logs/ # application logs
│ │ └── cron/
│ ├── sessions/ # shared filebased sessions (fallback)
│ ├── temp/ # alert cooldowns
│ ├── tmp/ # legacy temp path
│ └── uploads/ # application uploads
│
├── goeggel-shop.com/ # vhost
│ ├── httpdocs/ # public reachable
│ │ ├── admin/ # phpmyadmin, phpredis, composer.phar
│ │ ├── shop/ # symlinked prod application
│ │ │ ├── assets/ # images, js, css, fonts
│ │ │ ├── config/ # config.env, security.config.env etc.
│ │ │ ├── templates/ # templates
│ │ │ └── vendor/ # composer libs
│ │ ├── shop_dev/
│ │ └── shop_test/
│ ├── logs/ # server logs
│ ├── var/ # node spezifische lokale verzeichnis (private)
│ │ └── shop/ # application name (shop, sis, phpmyadmin, konfi etc.)
│ │ ├── sessions/ # local filebased session fallback local
│ │ └── temp/ #
│ │ └── order_export_backup/ # arbeitsverzeichnis: *.temp/*.dat vor packen
│ └── .ssh/ # SSH keys / deploy tokens
│
└── reifenbasis.de/
├── httpdocs/
│ ├── admin/
│ ├── sis/
│ └── sis_test/
└── logs/ # server logs
Path Constants¶
| Constant | Path |
|---|---|
WWW_ROOT |
/var/www |
SHARED_PATH |
/var/www/shared |
SHARED_PUBLIC_PATH |
/var/www/shared/public |
SHARED_PRIVATE_PATH |
/var/www/shared/private |
SHARED_LOG_PATH |
/var/www/shared/private/logs |
WAWI_PATH |
/var/www/shared/private/wawi |
WAWI_EXPORT_PATH |
/var/www/shared/private/wawi/export |
WAWI_IMPORT_PATH |
/var/www/shared/private/wawi/import |
VHOST_PATH |
/var/www/goeggel-shop.com |
HTTPDOCS_PATH |
/var/www/goeggel-shop.com/httpdocs |
APP_PATH |
/var/www/goeggel-shop.com/httpdocs/shop |
APP_BOOTSTRAP |
/var/www/goeggel-shop.com/httpdocs/shop/includes/paths.inc.php |
APP_INCLUDES_PATH |
/var/www/goeggel-shop.com/httpdocs/shop/includes |
APP_ASSETS_PATH |
/var/www/goeggel-shop.com/httpdocs/shop/assets |
APP_CONFIG_PATH |
/var/www/goeggel-shop.com/httpdocs/shop/config |
APP_VENDOR_PATH |
/var/www/goeggel-shop.com/httpdocs/shop/vendor |
APP_TEMPLATE_PATH |
/var/www/goeggel-shop.com/httpdocs/shop/templates |
APP_VAR_PATH |
/var/www/goeggel-shop.com/var |
APP_TEMP_PATH |
/var/www/goeggel-shop.com/var/shop/temp |
Cleanup Cronjobs¶
goeggel-shop.com/httpdocs/shop/cron/reorg_files.phpgoeggel-shop.com/httpdocs/shop/cron/reorg_wawi.phpgoeggel-shop.com/httpdocs/shop/cron/reorg_logs.php