Πίνακας περιεχομένων:
- Τρόπος αλλαγής χρονικού ορίου περιόδου λειτουργίας
- Τρόπος αλλαγής άλλων παραμέτρων συνεδρίας PHP
- Τρόπος απενεργοποίησης λειτουργιών και τάξεων PHP
- Πώς να αλλάξετε την εμφάνιση σφαλμάτων PHP
- Πως να αλλάξετε τα όρια πόρων PHP
Βίντεο: Κοινές δηλώσεις Κυριάκου Μητσοτάκη - Giuseppe Conte 2025
Τρόπος αλλαγής χρονικού ορίου περιόδου λειτουργίας
Όταν χρησιμοποιείτε τις περιόδους σύνδεσης για την εφαρμογή σας, τα δεδομένα συνήθως αποθηκεύονται σε αρχεία στον διακομιστή (αν και αυτό μπορεί επίσης να ρυθμιστεί στο php.ini) Οι συνεδρίες επηρεάζονται από μια διαδικασία συλλογής απορριμμάτων που καθαρίζει οποιεσδήποτε νεκρές συνεδρίες, όπως αυτές που δεν έχουν χρησιμοποιηθεί για ορισμένο αριθμό λεπτών
Από προεπιλογή, η διαδικασία συλλογής απορριμμάτων εξετάζει περιόδους λειτουργίας με διάρκεια ζωής 1, 440 δευτερόλεπτα. Αυτό σημαίνει ότι ο χρήστης πρέπει να είναι αδρανής για 1, 440 δευτερόλεπτα και στην επόμενη προσπάθεια, μπορεί να είναι ή να μην έχει λήξει.
Μια κοινή αλλαγή είναι εκείνη η διαδικασία συλλογής σκουπιδιών να το επιμηκύνεις. Αυτή η αλλαγή εφαρμόζεται συνήθως στη διαμόρφωση σε επίπεδο διακομιστή, αλλά μπορεί να ισχύει και σε επίπεδο ιστότοπου.
Το php. ini για να ελέγξετε αυτή τη συμπεριφορά είναι
συνεδρία. gc_maxlifetime = 1440
Τρόπος αλλαγής άλλων παραμέτρων συνεδρίας PHP
Μπορούν να ρυθμιστούν πολλές άλλες παράμετροι για τον έλεγχο της συμπεριφοράς των περιόδων σύνδεσης. Τα πράγματα όπως τα αρχεία συνεδριάσεων που αποθηκεύονται στον διακομιστή και το αν χρησιμοποιούν cookies είναι διαθέσιμα για αλλαγή. Ορισμένες από τις συνηθέστερες αλλαγές περιλαμβάνουν τη ρύθμιση του τομέα για το cookie περιόδου σύνδεσης και το όνομα της περιόδου σύνδεσης.
Και οι δύο είναι συνήθως ρυθμισμένες σε επίπεδο ιστότοπου. Η προεπιλεγμένη τιμή για το cookie_domain είναι κενή, όπως φαίνεται εδώ:
περίοδος σύνδεσης. όνομα = συνεδρία PHPSESSID. cookie_domain =
Τρόπος απενεργοποίησης λειτουργιών και τάξεων PHP
Μπορείτε να χρησιμοποιήσετε το php. ini για να απενεργοποιήσετε τις ενσωματωμένες λειτουργίες ή κλάσεις. Ενδέχεται να διαπιστώσετε ότι δεν θέλετε να χρησιμοποιούν άτομα που χρησιμοποιούν συγκεκριμένες λειτουργίες PHP ή ενδέχεται να υπάρχει κάποια ευπάθεια ασφαλείας σε μια συγκεκριμένη λειτουργία. Σε κάθε περίπτωση, μπορείτε να απενεργοποιήσετε τη λειτουργία ή την κλάση χρησιμοποιώντας αυτές τις οδηγίες:
disable_functions = disable_classes =
Κάθε λειτουργία περιμένει μια λίστα λειτουργιών ή κλάσεων που χωρίζονται με κόμματα να απενεργοποιηθεί. Για παράδειγμα, ίσως θελήσετε να απενεργοποιήσετε τη λειτουργία exec (). Η παρακάτω λίστα εμφανίζει μια απλή σελίδα PHP για τη δοκιμή αυτής της λειτουργικότητας.
php $ passwd = exec ("ls -la / etc / passwd"); εκτύπωση "{$ passwd}n";; >
Όταν προβάλλεται σε ένα πρόγραμμα περιήγησης, η σελίδα εμφανίζεται ως εξής:
Αλλαγή του php. ini για να απενεργοποιήσετε αυτή τη λειτουργία σημαίνει ότι χρησιμοποιείτε αυτήν την οδηγία:
disable_functions = exec
Μόλις γίνει επανεκκίνηση του Apache, η αλλαγή θα τεθεί σε ισχύ. Η ανανέωση της σελίδας έχει ως αποτέλεσμα την προειδοποίηση που εμφανίζεται.
Εάν χρησιμοποιείτε πάροχο φιλοξενίας, η λειτουργία exec () μπορεί να είναι ήδη απενεργοποιημένη. Επίσης, ενδέχεται να μην δείτε την προειδοποίηση εάν η διαμόρφωση PHP δεν εμφανίζει σφάλματα.
Πώς να αλλάξετε την εμφάνιση σφαλμάτων PHP
Υπάρχουν διάφορες οδηγίες διαμόρφωσης γύρω από την εμφάνιση σφαλμάτων για την PHP. Για παράδειγμα, ένας διακομιστής ανάπτυξης πιθανόν να εμφανίζει σφάλματα ανά πάσα στιγμή. Αυτή η ρύθμιση έχει οριστεί με την οδηγία display_errors:
display_errors = On
Ένας διακομιστής παραγωγής πιθανόν να μην εμφανίζει ποτέ σφάλματα στο χρήστη:
display_errors = Off
Μια σχετική οδηγία είναι η οδηγία error_reporting. Αυτή η περίπλοκη οδηγία ενημερώνει την PHP για το τι θα εμφανίσει για σφάλματα. Μπορείτε να διαμορφώσετε την PHP για να αναφέρετε μόνο σφάλματα που είναι θανατηφόρα ή μπορείτε να εμφανίσετε περισσότερα δευτερεύοντα λάθη όπως ειδοποιήσεις.
Η οδηγία για την αναφορά σφαλμάτων είναι κάπως περίπλοκη. Δείτε την PHP. net για περισσότερες πληροφορίες εάν πρέπει να αλλάξετε αυτήν την οδηγία.
Πως να αλλάξετε τα όρια πόρων PHP
Υπάρχουν φορές που πρέπει να αλλάξετε το μέγιστο επιτρεπόμενο μέγεθος αρχείου, όταν το αρχείο λαμβάνεται μέσω φόρμας POST ή φορτώνεται απευθείας ή λαμβάνεται με άλλο τρόπο εντελώς. Η οδηγία upload_max_filesize ορίζει το μέγιστο μέγεθος αρχείου που μπορεί να μεταφορτωθεί, ενώ η οδηγία post_max_size ορίζει το μέγιστο μέγεθος μιας φόρμας POST. Εάν επιτρέπετε φόρμες για τη μεταφόρτωση αρχείων, οι πιθανότητες είναι να αλλάξετε και τις δύο οδηγίες.
Επιπλέον, μπορεί να διαπιστώσετε ότι πρέπει να αλλάξετε τα όρια μνήμης που επιβάλλονται σε μια δεδομένη δέσμη ενεργειών PHP ή την ώρα εκτέλεσης που εκτελείται σε ένα σενάριο. Για παράδειγμα, εάν ένας χρήστης ανεβάζει ένα μεγάλο αρχείο, μπορεί να χρειαστούν αρκετά λεπτά. Η οδηγία memory_limit ορίζει την ποσότητα μνήμης που μπορεί να χρησιμοποιηθεί από ένα πρόγραμμα PHP και η οδηγία max_execution_time ορίζει πόσο μπορεί να εκτελεστεί ένα πρόγραμμα.
Μπορείτε να αλλάξετε τον μέγιστο χρόνο για μια δέσμη ενεργειών, αλλάζοντας το max_execution_time στο php. ini ή χρησιμοποιώντας τη συνάρτηση set_time_limit () μέσα σε ένα ξεχωριστό σενάριο. Η συνάρτηση set_time_limit () είναι ένας κοινός τρόπος για την επίλυση του προβλήματος μιας δέσμης ενεργειών που διαρκεί και ταυτόχρονα διατηρείται η τιμή της οδηγίας max_execution_time για ολόκληρο τον διακομιστή.
