Αρχική σελίδα » πως να » Πώς να αυξήσετε το όριο μεγέθους του αρχείου καταχώρησης PHP

    Πώς να αυξήσετε το όριο μεγέθους του αρχείου καταχώρησης PHP

    Αν έχετε μια εφαρμογή web που μεταφορτώνει αρχεία στον διακομιστή μέσω μιας δέσμης ενεργειών PHP, ίσως έχετε παρατηρήσει ότι από προεπιλογή δεν μπορείτε να ανεβάσετε τρομερά μεγάλα αρχεία. Εδώ είναι πώς να το αλλάξετε.

    Ο λόγος για τον οποίο το όριο έχει οριστεί αρκετά χαμηλό από προεπιλογή είναι για λόγους σταθερότητας και ασφάλειας - ένα κακόβουλο script ή ένας εισβολέας θα μπορούσε να επιχειρήσει να κάνει το διακομιστή σας με μεγάλες μεταφορτώσεις αρχείων και να κλείσει προσωρινά την εφαρμογή σας.

    Για να αλλάξετε τις τιμές, θα χρειαστεί να επεξεργαστείτε το αρχείο php.ini που συνήθως βρίσκεται σε αυτή τη διαδρομή αρχείου:

    /etc/php.ini

    Ακολουθούν οι ρυθμίσεις που θέλετε να αλλάξετε:

    post_max_size
    Αυτή η ρύθμιση ελέγχει το μέγεθος μιας ανάρτησης HTTP και πρέπει να είναι μεγαλύτερη από τη ρύθμιση upload_max_filesize.

    upload_max_filesize
    Αυτή η τιμή ορίζει το μέγιστο μέγεθος ενός αρχείου μεταφόρτωσης.

    memory_limit
    Θα θελήσετε να βεβαιωθείτε ότι το όριο μνήμης δέσμης ενεργειών έχει οριστεί σε ένα αξιοπρεπές μέγεθος, ίσως μεγαλύτερο από οποιαδήποτε από τις δύο άλλες ρυθμίσεις.

    Ρύθμιση των μεταβλητών

    Μπορείτε να ορίσετε τις τιμές χρησιμοποιώντας μια αριθμητική τιμή που ακολουθείται από το M για το ποσό MB που θέλετε να διαθέσετε για κάθε μεταβλητή. Για παράδειγμα, για να μπορέσετε να μεταφορτώσετε αρχεία μεγέθους 20MB, θα πρέπει να χρησιμοποιήσετε κάτι παρόμοιο:

    memory_limit = 64M
    upload_max_filesize = 20M
    post_max_size = 25M

    Θα χρειαστεί να κάνετε επανεκκίνηση του διακομιστή σας Apache μόλις κάνετε αυτήν την αλλαγή, με αυτήν την εντολή:

    /etc/init.d/httpd επανεκκίνηση

    Ρύθμιση του μεγέθους μεταφόρτωσης ανά εφαρμογή

    Μπορείτε να αλλάξετε αυτή τη ρύθμιση για μια συγκεκριμένη εφαρμογή ιστού τοποθετώντας την στο αρχείο .htaccess, στον κατάλογο της εφαρμογής. Σημειώστε ότι αυτό θα λειτουργήσει μόνο εάν ο διακομιστής σας έχει ενεργοποιήσει την αντικατάσταση για τον εικονικό κεντρικό υπολογιστή ή διακομιστή σας.

    Για παράδειγμα, θα μπορούσατε να βάλετε τα ακόλουθα στο αρχείο:

    php_value memory_limit = 64M
    php_value upload_max_filesize = 20M
    php_value post_max_size = 25M

    Αφού αποθηκεύσετε το αρχείο, θα πρέπει να εφαρμοστούν οι αλλαγές.