Κεφάλαιο 18 · 18.1
Η ιστοσελίδα μου είναι λευκή ή εμφανίζει σφάλμα 500
Ανοίγετε την ιστοσελίδα σας και βλέπετε μια λευκή οθόνη, το μήνυμα 500 Internal Server Error, HTTP ERROR 500 ή στο WordPress Er is een kritieke fout opgetreden op deze website. Αυτό σχεδόν πάντα σημαίνει ότι ο κώδικας της ιστοσελίδας σας μπλοκάρει. Ο ίδιος ο διακομιστής συνήθως λειτουργεί κανονικά. Με τα παρακάτω βήματα θα βρείτε στις περισσότερες περιπτώσεις μόνοι σας την αιτία.
Πρώτα: τι άλλαξε πρόσφατα;
Ένα σφάλμα 500 σχεδόν ποτέ δεν εμφανίζεται από το πουθενά. Σκεφτείτε τις τελευταίες ώρες ή ημέρες:
- Ενημερώσατε κάποιο plugin, θέμα ή το ίδιο το WordPress, ή το έκανε αυτόματα το WordPress;
- Αλλάξατε την έκδοση PHP;
- Κάνατε κάποια αλλαγή στο αρχείο .htaccess, ή δημιουργήσατε μια ανακατεύθυνση ή προστατευμένο φάκελο;
- Ανεβάσατε αρχεία ή αλλάξατε δικαιώματα αρχείων;
Αν ξέρετε τι ήταν, αναιρέστε πρώτα ακριβώς αυτή την αλλαγή. Αυτή είναι συνήθως η ταχύτερη λύση.
Βήμα 1: δείτε το log σφαλμάτων
Το log σφαλμάτων σάς δείχνει ακριβώς ποιο αρχείο και ποια γραμμή προκαλεί το σφάλμα. Το βρίσκετε στο DirectAdmin στο System Info & Files και μετά στο Site summary & logs. Επιλέξτε το domain σας και ανοίξτε το log σφαλμάτων. Κοιτάξτε τις τελευταίες γραμμές: αυτές είναι οι πιο πρόσφατες. Πώς ακριβώς λειτουργεί αυτό, διαβάστε το στο Site summary & logs: το foutlog και το toegangslog.
Αν βλέπετε εκεί για παράδειγμα PHP Fatal error με μια διαδρομή προς wp-content/plugins/naam-van-plugin, τότε ξέρετε αμέσως ποιο plugin είναι ο ένοχος.
Βήμα 2: οι πιο συχνές αιτίες
Παρακάτω αναφέρονται οι αιτίες από τις πιο συχνές προς τις πιο σπάνιες.
1. Ένα plugin ή θέμα μετά από ενημέρωση
Αυτή είναι μακράν η πιο συχνή αιτία στο WordPress. Αν δεν μπορείτε πλέον να μπείτε στη διαχείριση του WordPress, απενεργοποιήστε τα plugins μέσω του DirectAdmin:
- Ανοίξτε το File Manager (δείτε Άνοιγμα της Διαχείρισης αρχείων: οι φάκελοι στο πακέτο σας).
- Πηγαίνετε στο domains/jouwdomein.nl/public_html/wp-content.
- Μετονομάστε τον φάκελο plugins σε, για παράδειγμα, plugins-uit. Το WordPress απενεργοποιεί τότε όλα τα plugins.
- Λειτουργεί ξανά η ιστοσελίδα σας; Μετονομάστε τον φάκελο πίσω σε plugins και ενεργοποιήστε στο WordPress τα plugins ένα ένα, μέχρι να επανεμφανιστεί το σφάλμα. Έτσι θα μάθετε ποιο είναι.
Αν γνωρίζετε ήδη ποιο plugin είναι (από το log σφαλμάτων), μετονομάστε μόνο τον φάκελο αυτού του plugin. Σε περίπτωση κρίσιμου σφάλματος, το WordPress στέλνει συχνά και ένα email στη διεύθυνση του διαχειριστή με έναν σύνδεσμο προς τη λειτουργία ανάκτησης. Ελέγξτε λοιπόν και το mailbox σας.
2. Η έκδοση PHP δεν ταιριάζει με την ιστοσελίδα σας
Μια παλιά ιστοσελίδα συχνά δεν λειτουργεί σε μια νέα έκδοση PHP, και ένα νέο plugin μερικές φορές δεν λειτουργεί σε μια παλιά. Αν αλλάξατε πρόσφατα την έκδοση PHP, επαναφέρετέ την στο Select PHP version (δείτε Η επιλογή της έκδοσης PHP (Select PHP version)). Στο Fouten na een PHP-upgrade en het foutlog vinden διαβάζετε πώς κάνετε στη συνέχεια την ιστοσελίδα κατάλληλη για μια νεότερη έκδοση.
Συμβουλή: Η ιστοσελίδα σας δεν έχει ενημερωθεί εδώ και χρόνια και δεν λειτουργεί πλέον σε μια σύγχρονη έκδοση PHP; Μπορούμε να την ενημερώσουμε για εσάς. Δείτε στο www.weboke.nl/website-php-upgrade.
3. Ένα σφάλμα στο .htaccess
Μία λανθασμένη γραμμή στο .htaccess προκαλεί άμεσα σφάλμα 500 για ολόκληρη την ιστοσελίδα. Ένα γνωστό παράδειγμα είναι μια γραμμή που άφησε πίσω του ένα plugin ασφαλείας, όπως το php_value auto_prepend_file με μια διαδρομή προς ένα αρχείο που δεν υπάρχει πλέον (για παράδειγμα από το Wordfence ή το All In One WP Security). Δοκιμάστε το ως εξής:
- Ενεργοποιήστε στο File Manager την εμφάνιση κρυφών αρχείων (δείτε Εμφάνιση και επεξεργασία κρυφών αρχείων όπως το .htaccess).
- Μετονομάστε το .htaccess στο public_html σε .htaccess-oud.
- Αν η ιστοσελίδα λειτουργεί τώρα (ενδεχομένως χωρίς ωραίες διευθύνσεις), τότε το σφάλμα βρίσκεται σε αυτό το αρχείο. Αφαιρέστε τη λανθασμένη γραμμή και μετονομάστε το αρχείο πίσω.
Ρυθμίσεις PHP όπως το μέγιστο μέγεθος ανεβάσματος ρυθμίζονται πιο εύκολα στο Select PHP version (δείτε PHP-επιλογές: upload_max_filesize, memory_limit και max_execution_time). Μια γραμμή με php_value στο .htaccess είναι επίσης δυνατή (δείτε PHP-ρυθμίσεις ανά φάκελο και μέσω .htaccess).
4. Ανεπαρκής μνήμη για την PHP
Αν στο log σφαλμάτων αναγράφεται Allowed memory size of ... bytes exhausted, τότε ένα script χρειάζεται περισσότερη μνήμη από αυτή που επιτρέπεται στην PHP. Αυξήστε το memory_limit στις επιλογές του Select PHP version (δείτε PHP-επιλογές: upload_max_filesize, memory_limit και max_execution_time).
5. Λανθασμένα δικαιώματα αρχείων
Αν φάκελοι ή αρχεία έχουν υπερβολικά ελεύθερα δικαιώματα (όπως 777), ο διακομιστής αρνείται να τα εκτελέσει. Οι φάκελοι πρέπει να έχουν δικαιώματα 755 και τα αρχεία 644. Πώς το προσαρμόζετε αυτό, διαβάστε το στο Δικαιώματα αρχείων και φακέλων (chmod).
6. Ο αποθηκευτικός χώρος του πακέτου σας είναι γεμάτος
Αν το πακέτο σας είναι γεμάτο, η ιστοσελίδα σας δεν μπορεί πλέον να αποθηκεύσει προσωρινά αρχεία ή sessions. Δείτε στο dashboard του DirectAdmin στο Disk Space. Τι πρέπει να κάνετε τότε, διαβάστε το στο Αποθηκευτικός χώρος γεμάτος: πού βρίσκεται ο χώρος;.
7. Λιγότερο συχνά: βάση δεδομένων, όρια ή hack
- Βλέπετε Error establishing a database connection; Διαβάστε 'Error establishing a database connection'.
- Βλέπετε ένα 503 ή Resource Limit Is Reached; Τότε το πακέτο σας φτάνει στα όρια της υπολογιστικής του ισχύος. Διαβάστε 503 ή 'Resource Limit Is Reached': τι τώρα;.
- Υπάρχουν αρχεία που δεν αναγνωρίζετε, ή η ιστοσελίδα σας στέλνει επισκέπτες σε παράξενες ιστοσελίδες; Διαβάστε Η ιστοσελίδα μου έχει παραβιαστεί: σχέδιο ενεργειών.
Μια λευκή οθόνη χωρίς μήνυμα
Σε μια λευκή οθόνη, η PHP δεν εμφανίζει σκόπιμα το μήνυμα σφάλματος στους επισκέπτες. Το log σφαλμάτων από το βήμα 1 είναι τότε η καλύτερη πηγή σας. Στο WordPress μπορείτε επίσης να θέσετε προσωρινά το define('WP_DEBUG', true); στο wp-config.php. Επαναφέρετέ το μετά σε false, διαφορετικά οι επισκέπτες θα βλέπουν τεχνικές λεπτομέρειες της ιστοσελίδας σας.
Άλλοι κωδικοί σφαλμάτων εν συντομία
| Μήνυμα | Τι σημαίνει; | Πού διαβάζετε περισσότερα; |
|---|---|---|
| 403 Forbidden | Ο διακομιστής αρνείται να εμφανίσει τη σελίδα, για παράδειγμα λόγω του firewall της ιστοσελίδας σας, δικαιωμάτων ή ενός αρχείου index που λείπει. | Σφάλμα 403 ή 406 κατά την αποθήκευση ή το ανέβασμα |
| 404 Not Found | Η σελίδα ή το αρχείο δεν υπάρχει σε αυτή τη θέση. Βρίσκεται η ιστοσελίδα σας στο public_html του σωστού domain; Προσέξτε τα κεφαλαία γράμματα στα ονόματα αρχείων. | Άνοιγμα της Διαχείρισης αρχείων: οι φάκελοι στο πακέτο σας |
| 413 Request Entity Too Large | Αυτό που ανεβάζετε είναι μεγαλύτερο από το επιτρεπόμενο. | Μεγάλο μέγεθος αρχείου μεταφόρτωσης (σφάλμα 413) ή λήξη χρόνου |
| 500 Internal Server Error | Ο κώδικας της ιστοσελίδας σας μπλοκάρει. | Αυτό το άρθρο |
| 503 ή 508, Resource Limit Is Reached | Το πακέτο σας χρησιμοποιεί προσωρινά περισσότερη υπολογιστική ισχύ από την επιτρεπόμενη. | 503 ή 'Resource Limit Is Reached': τι τώρα; |
| Σελίδα του WebOké αντί της ιστοσελίδας σας | Το domain δεν έχει ρυθμιστεί ακόμα (σωστά) στο πακέτο hosting σας, ή το DNS δείχνει ακόμα κάπου αλλού. | Το domain μου δεν λειτουργεί ακόμη μετά από μεταφορά ή αλλαγή |
Επιστροφή σε μια λειτουργική έκδοση
Δεν βρίσκετε λύση και η ιστοσελίδα λειτουργούσε ακόμα χθες; Τότε επαναφέρετε ένα αντίγραφο ασφαλείας. Στο Mijn WebOké αυτό είναι δυνατό με το WebOké Backups: επιλέξτε μια στιγμή πριν από το σφάλμα και επαναφέρετε μόνο τον φάκελο της ιστοσελίδας σας και, ενδεχομένως, τη βάση δεδομένων (δείτε Kan dit ook in Mijn WebOké; WebOké Backups). Αν χρησιμοποιείτε το Installatron, μπορείτε επίσης να επαναφέρετε ένα αντίγραφο ασφαλείας από το Installatron (δείτε Αντίγραφα ασφαλείας δημιουργία και επαναφορά στο Installatron).
Συμβουλή: Με το Υγεία domain στο www.weboke.nl/domein-gezondheid βλέπετε με μια ματιά αν το domain σας, η εγγραφή A, η ιστοσελίδα και το πιστοποιητικό SSL είναι εντάξει. Στο Ιστοσελίδα εμφανίζεται τότε για παράδειγμα Αποκρίνεται με σφάλμα διακομιστή (HTTP 500).
