Ρυθμίσεις του Nextcloud
Είδαμε πως μπορούμε να κάνουμε βασική εγκατάσταση Nextcloud σε Banana Pi με Armbian Ubuntu 14.04.5. Εδώ θα δούμε κάποιες ρυθμίσεις για τον διακομιστή σας.
Είδαμε τη βασική εγκατάσταση Nextcloud. Εδώ θα δούμε κάποιες απλές ρυθμίσεις για τον server. Για περισσότερες και πιο εξειδικευμένες ρυθμίσεις για τον server, δείτε την τεκμηρίωση.
Κάθε φορά που κάνετε αλλαγές στον apache, πρέπει να εκτελείτε την εντολή:
service apache2 restart
Για να λειτουργεί το Nextcloud σωστά, θα χρειαστεί να ενεργοποιήσετε κάποια modules. Αυτά με την σειρά είναι (μερικά μπορεί να είναι ενεργοποιημένα ήδη):
a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
a2enmod setenvif
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
a2enmod setenvif
Εάν με την επανεκκίνηση του apache σας βγάλει ένα σφάλμα:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using ::1. Set the 'ServerName' directive globally to suppress this message
μπορείτε να εκτελέσετε τις παρακάτω εντολές:
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf
sudo a2enconf fqdn
sudo a2enconf fqdn
και θα είστε ΟΚ.
Ρυθμίσεις για μνήμη Caching
Στην επίσημη τεκμηρίωση γράφει 4 προγράμματα που μπορούν να χρησιμοποιηθούν. Στο συνέδριο έμαθα ότι τα 2 επικρατέστερα είναι το redis και το APCu. Το redis, απ' όσο κατάλαβα, αφορά την έκδοση php 7, ενώ το APCu την έκδοση 5. Μπορεί βέβαια να κατάλαβα και λάθος.
APCu
Στην έκδοση PHP 5.5 και νεότερη συμπεριλαμβάνεται το Zend OPcache, και στις περισσότερες διανομές Linux είναι ενεργοποιημένο ως προεπιλογή. Ωστόσο δεν χρησιμοποιούμε το APCu ως cache δεδομένων, και είναι διαθέσιμο σε όλες τις διανομές Linux. Στα συστήματα με Debian/Ubuntu/Mint εγκαθιστάτε το πακέτο php5-apcu. Στο Ubuntu 14.04LTS, το APCu βρίσκεται στην έκδοση 4.0.2, η οποία είναι πολύ παλιά για να χρησιμοποιηθεί στο Nextcloud. Το Nextcloud απαιτεί έκδοση 4.0.6+. Πρέπει να εγκαταστήσετε την 4.0.7 από τα Ubuntu backports με την εντολή:
apt-get install php5-apcu/trusty-backports
και επανεκκινήστε τον apache.
Αφού εκκινήσει ο apache, προσθέστε στο τέλος την παρακάτω γραμμή στο αρχείο /var/www/html/nextcloud/config/config.php:
'memcache.local' => '\OC\Memcache\APCu',
Τώρα μπορείτε να κάνετε ανανέωση της σελίδας του admin και η προειδοποίηση για την cache θα εξαφανιστεί.
Για το Redis, υπάρχουν οδηγίες εδώ και εδώ.
Πρέπει να κάνετε κάποιες αλλαγές στο αρχείο php.ini για να αυξήσετε κάποια όρια στα πόσα αρχεία ανεβάζετε, μέγεθος αρχείων κλπ.
nano /etc/php5/apache2/php.ini
Ψάξτε και αλλάξτε τις τιμές.
post_max_size = 2058M
upload_max_filesize = 2048M
max_file_uploads = 200
memory_limit = 512M
upload_max_filesize = 2048M
max_file_uploads = 200
memory_limit = 512M
Κάντε τροποποίηση το αρχείο index.html
mv /var/www/html/index.html /var/www/html/index.html.old
nano /var/www/html/index.html
nano /var/www/html/index.html
και προσθέστε το κείμενο που θα βρείτε στον σύνδεσμο
http://paste.opensuse.org/39274042
Ουσιαστικά θα κάνει προώθηση στον φάκελο που είναι εγκατεστημένο (αλλάξτε τον φάκελο /nextcloud σε αυτόν που βάλατε εσείς).
Αυτό δεν είναι και το πιο σωστό από άποψη server. Καλό θα είναι να κάνετε ρυθμίσεις μέσα από τον apache. Όμως υπάρχουν clients (όχι ο επίσημος) που πρέπει να εισάγετε και τον φάκελο εγκατάστασης. Οπότε αυτό βολεύει περισσότερο.
Έχει καθαρά κοσμητικό ρόλο.
Δείτε εάν έχετε εγκατεστημένο το πακέτο
apt-get install php5-cli
Πρέπει να έχετε ενεργοποιήσει τα mod_env και mod_rewrite. Ανοίξτε το αρχείο config.php:
nano /var/www/html/nextcloud/config/config.php
Και προσθέστε στο τέλος (πριν την παρένθεση) το εξής:
'htaccess.RewriteBase' => '/nextcloud',
Μέσα στον φάκελο /var/www/html/nextcloud, εκτελέστε:
sudo -u www-data php occ maintenance:update:htaccess
Κάντε και μια επανεκκίνηση τον apache. Αν είχατε μια διεύθυνση ανοικτή, σβήστε το index.php και δοκιμάστε να δείτε.
Στο συνέδριο, μας πρότειναν το εύκολο certbot. Πρέπει να ανοίξετε (port forward) τις πόρτες 80 και 443 στο router σας. Για το Ubuntu 14.04 θα βρείτε τις εντολές από στην ιστοσελίδα (αν διαφέρει ο server ή το λειτουργικό του server σας, ακολουθήστε τις κατάλληλες οδηγίες):
Αυτόματη εγκατάσταση
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
$ ./certbot-auto
chmod a+x certbot-auto
$ ./certbot-auto
Αυτόματη εκκίνηση
$ ./path/to/certbot-auto --apache
Εάν θέλετε να κάνετε αλλαγές στον Apache μόνοι σας, μπορείτε να εκτελέσετε την εντολή:
$ ./path/to/certbot-auto --apache certonly
Αυτόματη ανανέωση
Τα πιστοποιητικά του Let's Encrypt είναι έγκυρα για 90 ημέρες, έτσι καλό είναι να τα ανανεώνετε αυτόματα:
./path/to/certbot-auto renew --dry-run
Εάν δουλεύει μια χαρά, μπορείτε να το προσθέσετε είτε στο cron είτε στο systemd ώστε να εκτελείται το παρακάτω:
./path/to/certbot-auto renew --quiet --no-self-upgrade
Αν δεν σας πειράζει, μπορείτε να έχετε και ένα self signed πιστοποιητικό εφόσον το χρησιμοποιείτε μόνο εσείς.
Υπάρχει ένας αναλυτικός οδηγός στην Digital Ocean για το πως να δημιουργείτε κλειδί ssl στο Ubuntu 12.04.
Όταν κάνετε εγκατάσταση του Nextcloud, εγγράφεται στο αρχείο config.php η IP από την οποία κάνατε εγκατάσταση. Εάν μπείτε πχ από ένα ddns (no-ip, freedns κλπ), θα σας βγάλει προειδοποίηση ότι δεν είναι περασμένη η διεύθυνση αυτή και εάν θέλετε να την προσθέσετε ως trusted_domains. Ανοίξτε το αρχείο /var/www/html/nextcloud/config/config.php και θα δείτε την μορφή:
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'server1.example.com',
2 => '192.168.1.100',
),
array (
0 => 'localhost',
1 => 'server1.example.com',
2 => '192.168.1.100',
),
Μπορείτε να ενεργοποιήσετε κάποια πρόσθετα. Αυτό που έχει ιδιαίτερο ενδιαφέρον είναι οι εξωτερικές πηγές (είτε sites είτε μέσα). Για τα εξωτερικά μέσα, πρέπει να κάνετε εγκατάσταση και το παρακάτω.
apt-get install smbclient
Για περισσότερες πληροφορίες-ρυθμίσεις, δείτε τους παρακάτω οδηγούς:
* https://bayton.org/2016/07/installing-nextcloud-on-ubuntu-16-04-lts-with-redis-apcu-apache/
* https://www.linuxbabe.com/cloud-storage/setup-nextcloud-server-ubuntu-16-04-apache-mariadb-php7
Leave a Comment