Απαιτήσεις συστήματος
Ελέγξτε WordPress, PHP, database, hosting, cron, REST API, αποθήκευση και εξωτερικές συνδέσεις πριν εγκαταστήσετε ή αναβαθμίσετε το Nutrition Hub.
Βασικές απαιτήσεις με μία ματιά
Οι παρακάτω τιμές αποτελούν το προτεινόμενο baseline για εγκατάσταση Nutrition Hub 1.x. Η σελίδα release notes της συγκεκριμένης έκδοσης μπορεί να αυξήσει κάποια ελάχιστη απαίτηση.
| Στοιχείο | Ελάχιστο | Προτεινόμενο production |
|---|---|---|
| WordPress | Έκδοση που δηλώνεται στο τρέχον plugin release | Τελευταία σταθερή και υποστηριζόμενη έκδοση |
| PHP | 8.2 | 8.3 ή νεότερη δοκιμασμένη έκδοση |
| Database | MySQL 8.0 ή MariaDB 10.6 | Τρέχουσα υποστηριζόμενη έκδοση με τακτικά backups |
| PHP memory limit | 256 MB | 512 MB ή περισσότερο |
| HTTPS | Υποχρεωτικό | Έγκυρο TLS certificate και HTTP/2 ή HTTP/3 |
| Cron | Λειτουργικό WP-Cron | Πραγματικό server cron κάθε 1–5 λεπτά |
| Web server | Apache ή Nginx | Nginx, Apache ή LiteSpeed με σωστά rewrite rules |
| Filesystem | Εγγράψιμο plugin/upload storage | SSD/NVMe και προστατευμένος χώρος αρχείων |
Η λειτουργία ραντεβού, email queues, reports, protected files, AI και integrations απαιτεί σταθερό hosting και όχι οριακούς shared-hosting πόρους.
Hosting και πόροι server
Επεξεργαστική ισχύς
Τουλάχιστον 1 διαθέσιμο vCPU για μικρή εγκατάσταση. Προτείνονται 2 ή περισσότερα vCPU για πολλούς χρήστες, reports, imports και background queues.
Μνήμη server
Τουλάχιστον 1 GB πραγματικής διαθέσιμης RAM. Προτείνονται 2–4 GB ή περισσότερο για production περιβάλλον.
SSD ή NVMe
Η αποθήκευση πρέπει να καλύπτει database, protected files, προσωρινά exports, logs και backups χωρίς να λειτουργεί μονίμως κοντά στο όριο.
Σταθερές εξερχόμενες συνδέσεις
Το hosting πρέπει να επιτρέπει HTTPS requests προς την κεντρική πλατφόρμα και τους ενεργούς integration providers.
- Έγκυρο SSL/TLS certificate σε όλα τα production URLs.
- Σωστά rewrite rules και λειτουργικά permalinks.
- Δυνατότητα δημιουργίας server cron job.
- Πρόσβαση σε error logs και PHP logs.
- Καθημερινό off-site backup database και protected files.
- Staging περιβάλλον για σημαντικές αναβαθμίσεις.
Οι email queues, calendar retries, PDF reports και scheduled tasks μπορεί να καθυστερούν ή να αποτυγχάνουν όταν το account περιορίζεται συνεχώς από LVE ή παρόμοιο resource control.
PHP έκδοση, όρια και extensions
Το Nutrition Hub προτείνεται να λειτουργεί σε PHP 8.3. Η ακριβής λίστα υποστηριζόμενων εκδόσεων πρέπει να συμφωνεί με το test matrix κάθε release.
| PHP setting | Ελάχιστο | Προτεινόμενο |
|---|---|---|
memory_limit |
256M | 512M ή περισσότερο |
max_execution_time |
120 | 300 για reports, migrations και maintenance |
max_input_vars |
3000 | 5000 ή περισσότερο |
upload_max_filesize |
32M | 64M ή ανάλογα με την πολιτική αρχείων |
post_max_size |
32M | Ίσο ή μεγαλύτερο από το upload limit |
max_file_uploads |
20 | 20 ή περισσότερο |
Απαιτούμενα ή προτεινόμενα PHP extensions
Τα extensions OpenSSL ή Sodium είναι σημαντικά για την ασφαλή αποθήκευση integration tokens και άλλων secrets.
Απαιτήσεις WordPress
Ενημερωμένο WordPress Core
Χρησιμοποιήστε σταθερή υποστηριζόμενη έκδοση και εφαρμόστε security releases χωρίς αδικαιολόγητη καθυστέρηση.
Pretty permalinks
Επιλέξτε δομή όπως /%postname%/ ώστε να
λειτουργούν σωστά REST routes και δημόσιες σελίδες.
WordPress Site Health
Το Site Health δεν πρέπει να εμφανίζει κρίσιμα προβλήματα σε REST API, loopback requests, cron ή HTTPS.
Σωστό timezone
Για ελληνική εγκατάσταση χρησιμοποιήστε
Europe/Athens, όχι σταθερό UTC offset.
Administrator μόνο για διαχείριση
Η καθημερινή εργασία γίνεται με τους ρόλους Nutrition Hub και όχι με κοινόχρηστο administrator account.
Το Multisite δεν πρέπει να θεωρείται αυτόματα υποστηριζόμενο. Χρησιμοποιείται μόνο όταν υπάρχει ρητή τεχνική επιβεβαίωση και δοκιμή του συγκεκριμένου deployment.
Cron, REST API και loopback requests
Το Nutrition Hub χρησιμοποιεί background processing για email, calendar sync, retries, maintenance, cleanup και άλλες προγραμματισμένες εργασίες.
Server cron
Προτείνεται πραγματικό cron κάθε 1–5 λεπτά που καλεί το WordPress cron endpoint ή κατάλληλο WP-CLI command.
WordPress REST API
Δεν πρέπει να μπλοκάρεται συνολικά από security plugin, firewall ή custom code.
Εσωτερικά requests
Το site πρέπει να μπορεί να καλεί τον εαυτό του για cron, queues και health checks.
Retry processing
Failed calendar, email και webhook jobs χρειάζονται αξιόπιστη επανεκτέλεση με όρια και backoff.
*/5 * * * * php /path/to/wordpress/wp-cron.php >/dev/null 2>&1
Όταν χρησιμοποιείται πραγματικό server cron, το built-in WP-Cron μπορεί να απενεργοποιηθεί μόνο αφού επιβεβαιωθεί ότι το εξωτερικό cron εκτελείται αξιόπιστα.
Αποθήκευση, uploads και backups
- Τα protected patient files δεν αποθηκεύονται ως δημόσια Media Library URLs.
- Το storage path πρέπει να είναι εγγράψιμο μόνο από την εφαρμογή και τον server.
- Το disk quota πρέπει να παρακολουθείται και να δημιουργούνται alerts.
- Τα backups περιλαμβάνουν database και protected-file storage.
- Τα προσωρινά exports και reports καθαρίζονται με retention policy.
- Η επαναφορά backup δοκιμάζεται σε staging.
| Τύπος δεδομένων | Απαίτηση backup | Σημείωση |
|---|---|---|
| WordPress database | Καθημερινά ή συχνότερα | Patients, appointments, settings και mappings. |
| Protected files | Καθημερινά και off-site | PDF, εικόνες, reports και uploads. |
| Plugin/theme files | Σε κάθε αλλαγή ή release | Μπορούν επίσης να επαναφερθούν από επίσημο package. |
| Secrets/configuration | Ασφαλής ξεχωριστή διαδικασία | Δεν αποθηκεύονται σε μη κρυπτογραφημένα κοινά backups. |
Εξωτερικές υπηρεσίες και firewall rules
Ανάλογα με τις ενεργές integrations, το hosting πρέπει να επιτρέπει εξερχόμενες HTTPS ή WebSocket συνδέσεις προς τις παρακάτω κατηγορίες υπηρεσιών.
Nutrition Hub central API
License validation, private updates, account features, OAuth mediation και AI proxy.
Google APIs
OAuth token exchange και Google Calendar API, μόνο όταν η integration είναι ενεργή.
Payment providers
Stripe, PayPal ή Viva Wallet μόνο για τις πραγματικά ενεργές production integrations.
Email και Realtime
SMTP ή email API provider και ασφαλής Soketi/WebSocket host όπου χρησιμοποιούνται.
Χρησιμοποιήστε allowlist συγκεκριμένων production hosts και ports όταν το hosting firewall υποστηρίζει τέτοιο έλεγχο.
Email delivery και υποστηριζόμενοι browsers
- Transactional email provider ή αξιόπιστο authenticated SMTP.
- SPF, DKIM και DMARC για το sender domain.
- Queue και retry support.
- Πρόσβαση σε delivery, bounce και suppression status.
- Δεν προτείνεται απλή PHP
mail()για production.
Browsers
Προτείνονται οι δύο τελευταίες κύριες εκδόσεις των Chrome, Microsoft Edge, Firefox και Safari. Ο Internet Explorer δεν υποστηρίζεται.
Plugins, caching και configurations
| Κατηγορία | Απαίτηση |
|---|---|
| Page cache | Εξαίρεση dynamic portal, account, booking, OAuth callback, webhook και authenticated REST routes. |
| Security plugins | Δεν πρέπει να μπλοκάρουν νόμιμα REST, AJAX, cron, callbacks ή server-to-server requests. |
| Object cache | Επιτρέπεται Redis/Memcached, με σωστή invalidation και χωρίς shared cache μεταξύ tenants. |
| WooCommerce | Δεν είναι βασική απαίτηση, εκτός αν χρησιμοποιείται πραγματικά στο συμφωνημένο payment architecture. |
| Multilingual plugins | Απαιτείται ξεχωριστή δοκιμή για routes, emails και portal. |
| Maintenance mode | Δεν πρέπει να εμποδίζει OAuth callbacks, payment webhooks ή scheduled processing. |
Δοκιμάστε login, roles, appointments, patient portal, email, protected files και integrations πριν από production release.
Έλεγχος πριν από εγκατάσταση ή αναβάθμιση
Τι περιλαμβάνει ένα χρήσιμο System Report
Για τεχνική υποστήριξη, στείλτε τις παρακάτω πληροφορίες χωρίς passwords, tokens, API keys ή προσωπικά δεδομένα ασθενών.
Domain:
WordPress version:
Nutrition Hub version:
PHP version:
PHP memory limit:
Database type/version:
Web server:
WordPress timezone:
Cron method:
REST API status:
Loopback status:
Active object cache:
Relevant error code:
Date/time of issue:
Recent changes:
Συχνές ερωτήσεις
Λειτουργεί σε shared hosting;
Μπορεί να λειτουργήσει σε ποιοτικό shared hosting, αλλά απαιτούνται επαρκείς πόροι, cron, HTTPS, REST API, protected storage και πρόσβαση σε logs. Για αυξημένη χρήση προτείνεται managed VPS ή αντίστοιχο περιβάλλον.
Είναι απαραίτητο το WooCommerce;
Όχι ως βασική απαίτηση. Προστίθεται μόνο όταν αποτελεί πραγματικό μέρος του επιλεγμένου checkout ή billing flow.
Μπορώ να απενεργοποιήσω το WP-Cron;
Ναι, μόνο εφόσον έχει ρυθμιστεί και δοκιμαστεί πραγματικό server cron που εκτελεί τις WordPress scheduled tasks.
Γιατί χρειάζονται 512 MB PHP memory;
Είναι προτεινόμενο περιθώριο για reports, protected files, updates, background jobs και συνεργασία με άλλα WordPress plugins. Δεν σημαίνει ότι κάθε request καταναλώνει 512 MB.
Υποστηρίζεται WordPress Multisite;
Όχι αυτόματα. Απαιτείται ρητή τεχνική αξιολόγηση επειδή αλλάζουν database scope, users, licensing, cron και isolation μεταξύ sites.
Μετά τον έλεγχο συστήματος
Backups, Migration & Recovery
Η επόμενη σελίδα καλύπτει backup scope, restores, αλλαγή hosting, domain migration και disaster recovery.