Προαπαιτούμενα
Βήμα 1: Προσθήκη χρήστη Sudo
Βήμα 2: Ενημερώστε το σύστημα CentOS 7
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Βήμα 4: Ανοίξτε τις θύρες τείχους προστασίας Ιστού
Βήμα 5: Απενεργοποιήστε το SELinux (αν είναι ενεργοποιημένο)
Βήμα 6: Εγκαταστήστε την PHP 5.4
Βήμα 7: Εγκαταστήστε τον διακομιστή MariaDB (MySQL).
Βήμα 8: Δημιουργία βάσης δεδομένων για TextPattern CMS
Βήμα 9: Εγκαταστήστε τα αρχεία CMS TextPattern
Βήμα 10: Ολοκληρώστε την εγκατάσταση του TextPattern CMS
Το TextPattern CMS 4.6.2 είναι ένα απλό, ευέλικτο, δωρεάν και ανοιχτού κώδικα Σύστημα Διαχείρισης Περιεχομένου (CMS) που επιτρέπει στους σχεδιαστές ιστοσελίδων να σχεδιάζουν όμορφους ιστότοπους χωρίς προγραμματισμό σε PHP. Το TextPattern CMS διαθέτει μια εύκολη στην εκμάθηση γλώσσα προτύπων που βασίζεται σε ετικέτες που μοιάζει με XML, η οποία επιτρέπει στους σχεδιαστές ιστού να δομούν γρήγορα και να δημιουργούν γρήγορες, λιτές, ανταποκρινόμενες και ασφαλείς ιστοσελίδες και ιστολόγια που βασίζονται σε CMS.
Σε αυτό το σεμινάριο, θα εγκαταστήσουμε το TextPattern CMS 4.6.2 σε ένα CentOS 7 LAMP VPS χρησιμοποιώντας τον διακομιστή ιστού Apache, PHP 5.4 και μια βάση δεδομένων MariaDB.
Προαπαιτούμενα
- Μια καθαρή παρουσία διακομιστή Vultr CentOS 7 με πρόσβαση SSH.
Βήμα 1: Προσθήκη χρήστη Sudo
Θα ξεκινήσουμε προσθέτοντας έναν νέο sudo
χρήστη.
Πρώτα, συνδεθείτε στον διακομιστή σας ως root
:
ssh root@YOUR_VULTR_IP_ADDRESS
Προσθέστε έναν νέο χρήστη που ονομάζεται user1
(ή το όνομα χρήστη που προτιμάτε):
useradd user1
Στη συνέχεια, ορίστε τον κωδικό πρόσβασης για τον user1
χρήστη:
passwd user1
Όταν σας ζητηθεί, εισαγάγετε έναν ασφαλή και αξέχαστο κωδικό πρόσβασης.
Τώρα ελέγξτε το /etc/sudoers
αρχείο για να βεβαιωθείτε ότι η sudoers
ομάδα είναι ενεργοποιημένη:
visudo
Αναζητήστε μια ενότητα όπως αυτή:
%wheel ALL=(ALL) ALL
Αυτή η γραμμή μας λέει ότι οι χρήστες που είναι μέλη της wheel
ομάδας μπορούν να χρησιμοποιήσουν την sudo
εντολή για να αποκτήσουν root
προνόμια. Θα πρέπει να μην σχολιαστεί από προεπιλογή, ώστε να μπορείτε απλά να βγείτε από το αρχείο.
Στη συνέχεια πρέπει να προσθέσουμε user1
στην wheel
ομάδα:
usermod -aG wheel user1
Μπορούμε να επαληθεύσουμε τη user1
συμμετοχή στην ομάδα και να ελέγξουμε ότι η usermod
εντολή λειτουργούσε με την groups
εντολή:
groups user1
Τώρα χρησιμοποιήστε την su
εντολή για να μεταβείτε στον νέο user1
λογαριασμό χρήστη sudo :
su - user1
Η γραμμή εντολών θα ενημερωθεί για να υποδείξει ότι είστε πλέον συνδεδεμένοι στο user1
λογαριασμό. Μπορείτε να το επαληθεύσετε με την whoami
εντολή:
whoami
Επανεκκινήστε την sshd
υπηρεσία ώστε να μπορείτε να συνδεθείτε μέσω ssh
του νέου λογαριασμού χρήστη sudo που δεν είναι root που μόλις δημιουργήσατε:
sudo systemctl restart sshd
Έξοδος από τον user1
λογαριασμό:
exit
Έξοδος από τον root
λογαριασμό (που θα αποσυνδέσει τη ssh
συνεδρία σας ).
exit
Μπορείτε τώρα να εισέλθετε ssh
στην παρουσία διακομιστή από τον τοπικό σας κεντρικό υπολογιστή χρησιμοποιώντας τον νέο user1
λογαριασμό χρήστη sudo που δεν είναι root :
ssh user1@YOUR_VULTR_IP_ADDRESS
Εάν θέλετε να εκτελέσετε sudo χωρίς να χρειάζεται να πληκτρολογείτε κωδικό πρόσβασης κάθε φορά, ανοίξτε /etc/sudoers
ξανά το αρχείο χρησιμοποιώντας visudo
:
sudo visudo
Επεξεργαστείτε την ενότητα για την wheel
ομάδα έτσι ώστε να μοιάζει με αυτό:
%wheel ALL=(ALL) NOPASSWD: ALL
Σημείωση: Η απενεργοποίηση της απαίτησης κωδικού πρόσβασης για τον χρήστη sudo δεν είναι μια συνιστώμενη πρακτική, αλλά περιλαμβάνεται εδώ, καθώς μπορεί να κάνει τη διαμόρφωση του διακομιστή πολύ πιο βολική και λιγότερο ενοχλητική, ειδικά κατά τη διάρκεια μεγαλύτερων περιόδων διαχείρισης συστημάτων! Εάν ανησυχείτε για τις επιπτώσεις στην ασφάλεια, μπορείτε πάντα να επαναφέρετε την αλλαγή διαμόρφωσης στην αρχική, αφού ολοκληρώσετε τις εργασίες διαχείρισης.
Κάθε φορά που θέλετε να συνδεθείτε στον root
λογαριασμό χρήστη μέσα από τον sudo
λογαριασμό χρήστη, μπορείτε να χρησιμοποιήσετε μία από τις ακόλουθες εντολές:
sudo -i
sudo su -
Μπορείτε να βγείτε από τον root
λογαριασμό και να επιστρέψετε στον sudo
λογαριασμό χρήστη σας ανά πάσα στιγμή πληκτρολογώντας απλώς:
exit
Βήμα 2: Ενημερώστε το σύστημα CentOS 7
Πριν εγκαταστήσετε οποιοδήποτε πακέτο στην παρουσία του διακομιστή CentOS, θα ενημερώσουμε πρώτα το σύστημα.
Βεβαιωθείτε ότι έχετε συνδεθεί στον διακομιστή χρησιμοποιώντας έναν χρήστη sudo που δεν είναι root και εκτελέστε την ακόλουθη εντολή:
sudo yum -y update
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Εγκαταστήστε τον διακομιστή ιστού Apache:
sudo yum -y install httpd
Χρησιμοποιήστε την systemctl
εντολή για να ξεκινήσετε και να ενεργοποιήσετε την αυτόματη εκτέλεση του Apache κατά την εκκίνηση.
sudo systemctl enable httpd
sudo systemctl start httpd
Ελέγξτε το αρχείο διαμόρφωσης του Apache για να βεβαιωθείτε ότι η DocumentRoot
οδηγία οδηγεί στον σωστό κατάλογο.
sudo vi /etc/httpd/conf/httpd.conf
Η DocumentRoot
επιλογή διαμόρφωσης πρέπει να μοιάζει με αυτό:
DocumentRoot "/var/www/html"
Τώρα, ας βεβαιωθούμε ότι η mod_rewrite
μονάδα Apache είναι φορτωμένη. Μπορούμε να το κάνουμε αυτό αναζητώντας τον όρο " mod_rewrite
" στο αρχείο διαμόρφωσης των βασικών μονάδων του Apache .
Ανοίξτε το αρχείο:
sudo vi /etc/httpd/conf.modules.d/00-base.conf
Αναζητήστε τον όρο mod_rewrite
.
Εάν mod_rewrite
έχει φορτωθεί η λειτουργική μονάδα Apache, θα πρέπει να βρείτε μια γραμμή διαμόρφωσης όπως αυτή:
LoadModule rewrite_module modules/mod_rewrite.so
Εάν η παραπάνω γραμμή ξεκινά με άνω και κάτω τελεία, θα χρειαστεί να αφαιρέσετε το ερωτηματικό για να καταργήσετε το σχόλιο της γραμμής και να φορτώσετε τη μονάδα. Αυτό, φυσικά, ισχύει και για οποιεσδήποτε άλλες απαιτούμενες μονάδες Apache.
Τώρα πρέπει να επεξεργαστούμε το προεπιλεγμένο αρχείο ρυθμίσεων του Apache, ώστε mod_rewrite
να λειτουργεί σωστά με το TextPattern CMS.
Ανοίξτε το αρχείο:
sudo vi /etc/httpd/conf/httpd.conf
Στη συνέχεια, βρείτε την ενότητα που ξεκινά με <Directory "/var/www/html">
και αλλάξτε AllowOverride none
σε AllowOverride All
. Το τελικό αποτέλεσμα (με όλα τα σχόλια αφαιρεμένα) θα μοιάζει κάπως έτσι:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Τώρα αποθηκεύστε και κλείστε το αρχείο διαμόρφωσης του Apache.
Θα κάνουμε επανεκκίνηση του Apache στο τέλος αυτού του σεμιναρίου, αλλά η τακτική επανεκκίνηση του Apache κατά την εγκατάσταση και τη ρύθμιση παραμέτρων είναι σίγουρα μια καλή συνήθεια, οπότε ας το κάνουμε τώρα.
sudo systemctl restart httpd
Βήμα 4: Ανοίξτε τις θύρες τείχους προστασίας Ιστού
Τώρα πρέπει να ανοίξουμε τις προεπιλογές HTTP
και τις HTTPS
θύρες καθώς θα είναι αποκλεισμένες firewalld
από προεπιλογή.
Ανοίξτε τις θύρες του τείχους προστασίας:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Φορτώστε ξανά το τείχος προστασίας για να εφαρμόσετε τις αλλαγές.
sudo firewall-cmd --reload
Θα δείτε τη λέξη να success
εμφανίζεται στο τερματικό σας μετά από κάθε επιτυχημένη εντολή διαμόρφωσης τείχους προστασίας.
Μπορούμε γρήγορα να επαληθεύσουμε ότι η HTTP
θύρα Apache είναι ανοιχτή μεταβαίνοντας στη διεύθυνση IP ή τον τομέα του στιγμιότυπου διακομιστή σε ένα πρόγραμμα περιήγησης:
http://YOUR_VULTR_IP_ADDRESS/
Εάν όλα έχουν ρυθμιστεί σωστά, θα δείτε την προεπιλεγμένη ιστοσελίδα του Apache στο πρόγραμμα περιήγησής σας.
Βήμα 5: Απενεργοποιήστε το SELinux (αν είναι ενεργοποιημένο)
Το SELinux σημαίνει "Security Enhanced Linux". Είναι μια βελτίωση ασφαλείας στο Linux που επιτρέπει στους χρήστες και τους διαχειριστές ένα καλύτερο επίπεδο ελέγχου πρόσβασης. Είναι απενεργοποιημένο από προεπιλογή σε περιπτώσεις Vultr CentOS 7, αλλά θα καλύψουμε τα βήματα για να το απενεργοποιήσετε, μόνο σε περίπτωση που δεν ξεκινάτε από καθαρή εγκατάσταση και ήταν προηγουμένως ενεργοποιημένη.
Για να αποφύγουμε προβλήματα δικαιωμάτων αρχείων με το TextPattern CMS, πρέπει να διασφαλίσουμε ότι το SELinux είναι απενεργοποιημένο.
Αρχικά, ας ελέγξουμε εάν το SELinux είναι ενεργοποιημένο ή απενεργοποιημένο με την sestatus
εντολή:
sudo sestatus
If you see something like: SELinux status: disabled
then it is definitely disabled and you can skip straight to Step 6. If you see any other message, then you will need to complete this section.
Open the SELinux configuration file with your favorite terminal editor:
sudo vi /etc/selinux/config
Change SELINUX=enforcing
to SELINUX=disabled
and then save the file.
To apply the configuration change, SELinux requires a server reboot, so you can either restart the server using the Vultr control panel or you can simply use the shutdown
command:
sudo shutdown -r now
When the server reboots, your SSH session will get disconnected and you may see a message informing you about a 'broken pipe'
or 'Connection closed by remote host'
. This is nothing to worry about, simply wait for 20 seconds or so and then SSH back in again (with your own username and domain):
ssh user1@YOUR_DOMAIN
Or (with your own username and IP address):
ssh user1@YOUR_VULTR_IP_ADDRESS
Once you have logged back in, you should check the status of SELinux again with the sestatus
command to make sure it is properly disabled:
sudo sestatus
You will see a message saying SELinux status: disabled
. If you see a message saying SELinux status: enabled
(or something similar) you will need to repeat the above steps and ensure that you properly restart your server.
Step 6: Install PHP 5.4
We can now install PHP 5.4 along with all of the necessary PHP modules required by TextPattern CMS. We use PHP 5.4 because it is the native PHP version offered by CentOS 7.
sudo yum -y install php php-mbstring php-gd php-common php-pdo php-mysqlnd
Step 7: Install MariaDB (MySQL) Server
CentOS 7 defaults to using the MariaDB database server, which is an enhanced, fully open source, drop-in replacement for MySQL server.
Install MariaDB database server:
sudo yum -y install mariadb-server
Start and enable MariaDB server to execute automatically at boot time.
sudo systemctl enable mariadb
sudo systemctl start mariadb
Secure your MariaDB server installation:
sudo mysql_secure_installation
The root
password will be blank, so simply press "enter" when prompted for the root
password.
When prompted to create a MariaDB/MySQL root
user, select "Y" (for yes) and then enter a secure root
password. Simply answer "Y" to all of the other yes/no questions as the default suggestions are the most secure options.
Step 8: Create Database for TextPattern CMS
Log into the MariaDB shell as the MariaDB root
user by running the following command.
sudo mysql -u root -p
To access the MariaDB command prompt, simply enter the MariaDB root
password when prompted.
Run the following queries to create a MariaDB database and database user for TextPattern CMS.
CREATE DATABASE textpattern_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'textpattern_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON textpattern_db.* TO 'textpattern_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Μπορείτε να αντικαταστήσετε το όνομα της βάσης δεδομένων textpattern_db
και το όνομα χρήστη textpattern_user
με κάτι περισσότερο της αρεσκείας σας, αν προτιμάτε. Λάβετε υπόψη ότι το προεπιλεγμένο μέγιστο μήκος για τα ονόματα χρηστών στο MariaDB στο CentOS 7 είναι 16 χαρακτήρες. Επίσης, βεβαιωθείτε ότι έχετε αντικαταστήσει το " UltraSecurePassword
" με έναν πραγματικά ασφαλή κωδικό πρόσβασης.
Βήμα 9: Εγκαταστήστε τα αρχεία CMS TextPattern
Αλλάξτε τον τρέχοντα κατάλογο εργασίας σας στον προεπιλεγμένο κατάλογο web.
cd /var/www/html/
Εάν λάβετε ένα μήνυμα σφάλματος που λέει κάτι σαν 'No such file or directory'
, δοκιμάστε την ακόλουθη εντολή:
cd /var/www/ ; sudo mkdir html ; cd html
Ο τρέχων κατάλογος εργασίας σας θα πρέπει τώρα να είναι: /var/www/html/
. Μπορείτε να το ελέγξετε με την pwd
εντολή (print working directory):
pwd
Τώρα χρησιμοποιήστε το wget
για λήψη του πακέτου εγκατάστασης TextPattern CMS.
sudo wget https://textpattern.com/file_download/75/textpattern-4.6.2.zip
Σημείωση: Η παραπάνω διεύθυνση URL του πακέτου TextPattern CMS ήταν σωστή τη στιγμή της σύνταξης, αλλά θα πρέπει οπωσδήποτε να ελέγξετε για την πιο πρόσφατη έκδοση μεταβαίνοντας στη σελίδα λήψης του TextPattern CMS .
Καταχωρίστε τον τρέχοντα κατάλογο για να ελέγξετε ότι έχετε κατεβάσει με επιτυχία το αρχείο.
ls -la
Ας το εγκαταστήσουμε γρήγορα unzip
για να μπορέσουμε να αποσυμπιέσουμε το αρχείο.
sudo yum -y install unzip
Τώρα αποσυμπιέστε το αρχείο zip.
sudo unzip textpattern-4.6.2.zip
Μετακινήστε όλα τα αρχεία εγκατάστασης στον ριζικό κατάλογο ιστού:
sudo mv textpattern-4.6.2/* /var/www/html
Αλλάξτε την ιδιοκτησία των αρχείων Ιστού για να αποφύγετε τυχόν προβλήματα αδειών.
sudo chown -R apache:apache *
Επανεκκινήστε ξανά τον Apache.
sudo systemctl restart httpd
Τώρα είμαστε έτοιμοι να προχωρήσουμε στο τελευταίο βήμα.
Βήμα 10: Ολοκληρώστε την εγκατάσταση του TextPattern CMS
Ήρθε η ώρα να επισκεφτείτε τη διεύθυνση IP της παρουσίας του διακομιστή σας στο πρόγραμμα περιήγησής σας ή, εάν έχετε ήδη διαμορφώσει τις ρυθμίσεις DNS του Vultr (και του έχετε δώσει αρκετό χρόνο για να διαδοθεί), μπορείτε απλώς να επισκεφτείτε τον τομέα σας.
Για να αποκτήσετε πρόσβαση στη σελίδα εγκατάστασης TextPattern CMS, εισαγάγετε τη διεύθυνση IP της παρουσίας Vultr στη γραμμή διευθύνσεων του προγράμματος περιήγησής σας, ακολουθούμενη από /textpattern/setup/
:
http://YOUR_VULTR_IP_ADDRESS/textpattern/setup/
Οι περισσότερες από τις επιλογές εγκατάστασης είναι αυτονόητες, αλλά εδώ είναι μερικές υποδείξεις που θα σας βοηθήσουν:
Επιλέξτε τη γλώσσα σας και κάντε κλικ στο Submit
κουμπί.
Εισαγάγετε τα στοιχεία της βάσης δεδομένων που δημιουργήσαμε νωρίτερα:
MySQL user name: textpattern_user
MySQL password: UltraSecurePassword
MySQL server: localhost
MySQL database: textpattern_db
Εισαγάγετε τον τομέα του ιστότοπού σας εάν έχει διαμορφωθεί, διαφορετικά απλώς εισαγάγετε τη διεύθυνση IP σας και κάντε κλικ στο Next
κουμπί.
Site URL: YOUR_VULTR_IP_ADDRESS
Θα δείτε μια σελίδα που επιβεβαιώνει ότι η σύνδεση της βάσης δεδομένων σας είναι συνδεδεμένη. Αν δείτε ένα μήνυμα σφάλματος, επιστρέψτε στο βήμα 2 και ελέγξτε τις ρυθμίσεις της βάσης δεδομένων σας.
Τώρα επιστρέψτε στο τερματικό του διακομιστή σας και δημιουργήστε ένα config.php
αρχείο στον /textpattern/
κατάλογο.
sudo vi textpattern/config.php
Αντιγράψτε το κείμενο στη σελίδα εγκατάστασης στο config.php
αρχείο και, στη συνέχεια, αποθηκεύστε και βγείτε από το αρχείο. Τα περιεχόμενα του αρχείου ρυθμίσεων θα μοιάζουν κάπως έτσι:
<?php
$txpcfg['db'] = 'textpattern_db';
$txpcfg['user'] = 'textpattern_user';
$txpcfg['pass'] = 'UltraSecurePassword';
$txpcfg['host'] = 'localhost';
$txpcfg['table_prefix'] = '';
$txpcfg['txpath'] = '/var/www/html/textpattern';
$txpcfg['dbcharset'] = 'utf8mb4';
?>
Στη συνέχεια, επιστρέψτε στη σελίδα εγκατάστασης στο πρόγραμμα περιήγησής σας και κάντε κλικ στο I did it!
κουμπί.
Τώρα εισάγετε τα στοιχεία σύνδεσής σας ως εξής:
Your full name: <your full name>
Your email address: <your email address>
Choose a login name: <a memorable login name>
Choose a password: <a secure password>
Στη συνέχεια, επιλέξτε ένα θέμα ιστότοπου διαχειριστή ή απλώς αφήστε επιλεγμένο το προεπιλεγμένο θέμα.
Κάντε κλικ στο Next
κουμπί για να ολοκληρώσετε την εγκατάσταση.
Εάν όλα πήγαν ομαλά, θα δείτε μια σελίδα επιβεβαίωσης που λέει That went well!
.
Για λόγους ασφαλείας, θα πρέπει να επιστρέψετε στο τερματικό και να διαγράψετε τον /setup/
κατάλογο από τον /textpattern/
κατάλογο:
sudo rm -rf ./textpattern/setup/
Για να αποκτήσετε πρόσβαση στον ιστότοπο διαχειριστή, απλώς κάντε κλικ στο Log in now
κουμπί " " και εισαγάγετε το όνομα χρήστη και τον κωδικό πρόσβασής σας. Εάν δεν ανακατευθυνθείτε στη σελίδα σύνδεσης διαχειριστή, μπορείτε να εισαγάγετε τη διεύθυνση μη αυτόματα:
http://YOUR_VULTR_IP_ADDRESS/textpattern/index.php
Τώρα είστε έτοιμοι να αρχίσετε να προσθέτετε το περιεχόμενό σας και να διαμορφώνετε την εμφάνιση και την αίσθηση του ιστότοπού σας! Βεβαιωθείτε ότι έχετε ελέγξει την εξαιρετική τεκμηρίωση TextPattern CMS για περισσότερες πληροφορίες σχετικά με τον τρόπο δημιουργίας και διαμόρφωσης του ιστότοπού σας.
Ελπίζω να σας άρεσε αυτό το σεμινάριο και καλή τύχη να δημιουργήσετε τον νέο σας ιστότοπο που βασίζεται στο TextPattern CMS!