Αυτή τη στιγμή προσπαθώ να εντοπίσω το σωστό αρχείο php.ini για να το επεξεργαστώ και να επανεκκινήσω τον apache ώστε να πραγματοποιηθούν οι αλλαγές και έχω μείνει άναυδος.
Έχω βρει τρία διαφορετικά αρχεία php.ini (δεν έχω ιδέα γιατί υπάρχουν τρία) Έτσι βρήκα τα αρχεία
$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini
Έκανα επίσης....
$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
Τα άλλαξα όλα (για να είμαι σίγουρος) στις ρυθμίσεις που ήθελα.
Έκανα επανεκκίνηση του apache χρησιμοποιώντας
sudo service apache2 restart
Τα αποτελέσματα...
* Restarting web server apache2
Ξαναφόρτωσα τη σελίδα και έδειξε ότι το αρχείο php.ini δεν είχε ενημερωθεί.
Το ξέρω αυτό επειδή χρησιμοποίησα το
echo ini_get('post_max_size');
Το οποίο υποτίθεται ότι έπρεπε να αλλάξει σε 20M αλλά ήταν ακόμα μόνο 2M
Προσπάθησα να επανεκκινήσω τον υπολογιστή μου, πιστεύοντας ότι ίσως αυτό θα σταματούσε τον διακομιστή apache και θα επαναφόρτωνε το αρχείο php.ini με τη σωστή ρύθμιση, αλλά δυστυχώς και αυτή η προσπάθεια απέτυχε.
Υπάρχει πιθανότητα να υπάρχει κάποιο άλλο αρχείο php.ini που να παρεμβαίνει;
Τα τρία αρχεία που έχετε εκεί προορίζονται για διαφορετικές χρήσεις.
Το /etc/php/5.6/cli/php.ini
είναι για το πρόγραμμα CLI PHP, το οποίο βρήκατε εκτελώντας το php
στο τερματικό.
Το /etc/php/5.6/cgi/php.ini
είναι για το σύστημα php-cgi, το οποίο δεν χρησιμοποιείται ειδικά σε αυτή τη ρύθμιση.
Το /etc/php/5.6/apache2/php.ini
είναι για το πρόσθετο PHP που χρησιμοποιείται από τον Apache. Αυτό είναι το αρχείο που πρέπει να επεξεργαστείτε για να εφαρμοστούν οι αλλαγές στην εγκατάσταση του Apache.
Το /etc/php/5.6/fpm/php.ini
είναι για τον επεξεργαστή php5-fpm
, ο οποίος είναι ένα συμβατό με fastcgi 'wrapper' για την επεξεργασία της PHP (όπως για παράδειγμα για την παράδοση από το NGINX στο php5-fpm
) και εκτελείται ως αυτόνομη διεργασία στο σύστημα (σε αντίθεση με το PHP plugin του Apache).
Για εκδόσεις του Ubuntu χαμηλότερες από την 16.04, τα /etc/php/5.6/
,/etc/php/7.0/
,/etc/php/7.1/
, και ούτω καθεξής, αντικαθίστανται από /etc/php5/
και ούτω καθεξής. Διαφορετικά, αυτές οι διαδρομές παραμένουν ακριβείς. Προσαρμόστε το ανάλογα για το περιβάλλον σας, αντικαθιστώντας το 5.6
ή τον αριθμό με τον πραγματικό φάκελο έκδοσης που υπάρχει στο περιβάλλον σας.
Δοκιμάστε να εκτελέσετε ένα σενάριο που περιέχει αυτό το απόσπασμα στο πρόγραμμα περιήγησής σας <?php phpinfo(); ?>
και στη συνέχεια προσπαθήστε να αναζητήσετε κάτι όπως Loaded Configuration File. Αυτή η καταχώρηση προσδιορίζει το php.ini που χρησιμοποιεί η PHP στον Apache server σας.