Forutsetninger
Trinn 1: Legg til en Sudo-bruker
Trinn 2: Oppdater Fedora 26-systemet
Trinn 3: Installer Apache Web Server
Trinn 4: Åpne nettbrannmurporter
Trinn 5: Deaktiver SELinux
Trinn 6: Installer PHP 7.1
Trinn 7: Installer MariaDB (MySQL) Server
Trinn 8: Opprett database for ImpressPages CMS
Trinn 9: Installer ImpressPages CMS-filer
Trinn 10: Fullfør ImpressPages CMS-installasjonen
ImpressPages CMS 5.0 er et enkelt og effektivt, gratis og åpen kildekode, brukervennlig, MVC-basert Content Management System (CMS). ImpressPages CMS 5.0-funksjoner: innebygd redigering med dra-og-slipp-grensesnitt, lett og ren MVC-ruting, malhjelpere, URL-generering og er flerspråklig som standard.
I denne opplæringen skal vi installere ImpressPages CMS 5.0 på en Fedora 26 LAMP VPS ved å bruke Apache-webserver, PHP 7.1 og en MariaDB-database.
Forutsetninger
- En ren Vultr Fedora 26-serverforekomst med SSH-tilgang
Trinn 1: Legg til en Sudo-bruker
Vi starter med å legge til en ny sudobruker.
Først logger du på serveren din som root:
ssh root@YOUR_VULTR_IP_ADDRESS
Legg til en ny bruker kalt user1(eller ditt foretrukne brukernavn):
useradd user1
Deretter setter du passordet for user1brukeren:
passwd user1
Når du blir bedt om det, skriv inn et sikkert og minneverdig passord.
Sjekk nå /etc/sudoersfilen for å forsikre deg om at sudoersgruppen er aktivert:
visudo
Se etter en del som dette:
%wheel ALL=(ALL) ALL
... og sørg for at den er ukommentert. Denne linjen forteller oss at brukere som er medlemmer av wheelgruppen kan bruke sudokommandoen for å få rootprivilegier.
Når du har redigert filen, kan du lagre og avslutte ved å trykke Escog deretter enter for :wqå "skrive" og "avslutte" filen.
Deretter må vi legge user1til i wheelgruppen:
usermod -aG wheel user1
Vi kan bekrefte user1gruppemedlemskapet og kontrollere at usermodkommandoen fungerte med groupskommandoen:
groups user1
Bruk nå sukommandoen for å bytte til den nye sudo- user1brukerkontoen:
su - user1
Ledeteksten vil oppdateres for å indikere at du nå er logget på user1kontoen. Du kan bekrefte dette med whoamikommandoen:
whoami
Start nå sshdtjenesten på nytt slik at du kan logge på sshmed den nye ikke-root sudo-brukerkontoen du nettopp har opprettet:
sudo systemctl restart sshd
Avslutt user1kontoen:
exit
Avslutt rootkontoen (som vil koble fra sshøkten din ).
exit
Du kan nå gå sshinn i serverforekomsten fra din lokale vert ved å bruke den nye ikke-root sudo- user1brukerkontoen:
ssh user1@YOUR_VULTR_IP_ADDRESS
Hvis du vil kjøre sudo uten å måtte skrive inn et passord hver gang, åpner du /etc/sudoersfilen igjen ved å bruke visudo:
sudo visudo
Rediger seksjonen for wheelgruppen slik at den ser slik ut:
%wheel ALL=(ALL) NOPASSWD: ALL
Vennligst merk: Deaktivering av passordkravet for sudo-brukeren er ikke en anbefalt praksis, men det er inkludert her da det kan gjøre serverkonfigurasjonen mye mer praktisk. Hvis du er bekymret for sikkerhetsimplikasjonene, kan du alltid tilbakestille konfigurasjonsendringen til den opprinnelige etter at du er ferdig med administrasjonsoppgavene.
Når du vil logge på rootbrukerkontoen fra sudobrukerkontoen, kan du bruke en av følgende kommandoer:
sudo -i
sudo su -
Du kan avslutte rootkontoen og gå tilbake til sudobrukerkontoen din når som helst ved å skrive:
exit
Trinn 2: Oppdater Fedora 26-systemet
Før vi installerer noen pakker på Fedora-serverforekomsten, vil vi først oppdatere systemet.
Pass på at du er logget på serveren med en ikke-root sudo-bruker og kjør følgende kommando:
sudo dnf -y update
Trinn 3: Installer Apache Web Server
Installer Apache-nettserveren med:
sudo dnf -y install httpd
Bruk deretter systemctlkommandoen til å starte og aktivere Apache til å kjøre automatisk ved oppstart.
sudo systemctl enable httpd
sudo systemctl start httpd
Sjekk Apache-konfigurasjonsfilen for å sikre at DocumentRootdirektivet peker til riktig katalog.
sudo vi /etc/httpd/conf/httpd.conf
Den DocumentRootinnstilling skal se slik ut:
DocumentRoot "/var/www/html"
La oss nå sørge for at mod_rewriteApache-modulen er lastet. Vi kan gjøre dette ved å søke i konfigurasjonsfilen for Apache-basemodulene etter begrepet " mod_rewrite". Åpne filen:
sudo vi /etc/httpd/conf.modules.d/00-base.conf
Søk etter begrepet mod_rewrite.
Hvis mod_rewriteApache-modulen er lastet, bør du finne en konfigurasjonslinje som ser slik ut:
LoadModule rewrite_module modules/mod_rewrite.so
Hvis linjen ovenfor starter med et semikolon, må du fjerne semikolonet for å fjerne kommentaren til linjen og laste inn modulen. Dette gjelder selvfølgelig også for alle andre nødvendige Apache-moduler.
Vi må nå redigere Apaches standard konfigurasjonsfil slik at den mod_rewritefungerer riktig med ImpressPages CMS. Åpne filen:
sudo vi /etc/httpd/conf/httpd.conf
Finn deretter delen som begynner med <Directory "/var/www/html">og endre AllowOverride nonetil AllowOverride All. Sluttresultatet (med alle kommentarer fjernet) skal se omtrent slik ut:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Lagre og lukk nå Apache-konfigurasjonsfilen.
Vi vil starte Apache på nytt på slutten av denne opplæringen, men å starte Apache på nytt regelmessig under installasjon og konfigurasjon er absolutt en god vane, så la oss gjøre det nå.
sudo systemctl restart httpd
Trinn 4: Åpne nettbrannmurporter
Vi må nå åpne standard HTTPog HTTPSporter, da de vil bli blokkert som firewalldstandard.
Åpne brannmurportene:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Last inn brannmuren på nytt for å bruke endringene.
sudo firewall-cmd --reload
Du vil se ordet successvises i terminalen din etter hver vellykket brannmurkonfigurasjonskommando.
Vi kan raskt bekrefte at Apache- HTTPporten er åpen ved å besøke IP-adressen eller domenet til serverforekomsten i en nettleser:
http://YOUR_VULTR_IP_ADDRESS/
Hvis alt er satt opp riktig, vil du se standard Apache-nettsiden i nettleseren din.
Trinn 5: Deaktiver SELinux
SELinux stands for "Security Enhanced Linux". It is a security enhancement to Linux which allows users and administrators finer access control. It is enabled by default in Fedora 26, but it is definitely not essential for server security as many Linux server distributions do not ship with it installed or enabled by default.
To avoid file permission problems with ImpressPages CMS later down the line, we are going to disable SELinux. 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 to cleanly shutdown and restart the server:
sudo shutdown -r now
When the server reboots, your SSH session will be 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 should 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 7.1
We can now install PHP 7.1 along with all of the necessary PHP modules required by ImpressPages CMS.
sudo dnf -y install php php-mysqlnd php-mbstring php-gd php-common php-pdo php-xml
Step 7: Install MariaDB (MySQL) Server
Fedora 26 defaults to using MariaDB database server, which is an enhanced, fully open source, community developed, drop-in replacement for MySQL server.
Install MariaDB database server:
sudo dnf -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 hit 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 ImpressPages CMS
Log into the MariaDB shell as the MariaDB root user by running the following command.
sudo mysql -u root -p
For å få tilgang til MariaDB-ledeteksten, skriv ganske enkelt inn MariaDB- rootpassordet når du blir bedt om det.
Kjør følgende spørringer for å opprette en MariaDB-database og databasebruker for ImpressPages CMS.
CREATE DATABASE impress_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'impress_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON impress_db.* TO 'impress_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Du kan erstatte databasenavnet impress_dbog brukernavnet impress_usermed noe mer du liker, hvis du foretrekker det. Pass også på at du erstatter "UltraSecurePassword" med et faktisk sikkert passord.
Trinn 9: Installer ImpressPages CMS-filer
Endre gjeldende arbeidskatalog til standard nettkatalog.
cd /var/www/html/
Hvis du får en feilmelding som sier noe sånt som 'No such file or directory', kan du prøve følgende kommando:
cd /var/www/ ; sudo mkdir html ; cd html
Din nåværende arbeidskatalog skal nå være: /var/www/html/. Du kan sjekke dette med pwdkommandoen (skriv ut arbeidskatalog):
pwd
Bruk nå wgettil å laste ned ImpressPages CMS-installasjonspakken.
sudo wget http://download.impresspages.org/ImpressPages_5_0_3.zip
Vennligst merk: URL-adressen til ImpressPages CMS-pakken ovenfor var riktig i skrivende stund, men du bør definitivt se etter den nyeste versjonen ved å gå til ImpressPages CMS-nedlastingssiden .
List gjeldende katalog for å kontrollere at du har lastet ned filen.
ls -la
Fjern index.html:
sudo rm index.html
La oss raskt installere unzipslik at vi kan pakke ut filen.
sudo dnf -y install unzip
Dekomprimer nå zip-arkivet.
sudo unzip ImpressPages_5_0_3.zip
Flytt alle installasjonsfilene til webrotkatalogen:
sudo mv ImpressPages/* ImpressPages/.htaccess /var/www/html
Endre eierskap til nettfilene for å unngå problemer med tillatelser.
sudo chown -R apache:apache * .htaccess
La oss starte Apache på nytt.
sudo systemctl restart httpd
Nå er vi klare til å gå videre til det siste trinnet.
Trinn 10: Fullfør ImpressPages CMS-installasjonen
Det er nå på tide å besøke IP-adressen til serverforekomsten din i nettleseren din, eller hvis du allerede har konfigurert Vultr DNS-innstillingene (og gitt den nok tid til å spre seg), kan du ganske enkelt besøke domenet ditt i stedet.
For å få tilgang til installasjonssiden for ImpressPages CMS, skriv inn IP-adressen til Vultr-forekomsten din i nettleserens adresselinje, etterfulgt av index.php:
http://YOUR_VULTR_IP_ADDRESS/index.php
De fleste installasjonsalternativene er selvforklarende, men her er noen tips for å hjelpe deg videre:
Skriv inn følgende verdier på Website Configurationsiden:
Website name: <name of your web site>
Website e-mail address: <admin email address>
Time zone: <your time zone>
Og klikk Next.
Skriv inn følgende verdier på Database Configurationsiden:
Database Host: localhost
User name: impress_user
User password: UltraSecurePassword
Database name: impress_db
Og klikk Next.
Du vil bli omdirigert og logget inn på Admin-delen av ImpressPages CMS og en melding vil vises som viser administratorinnloggingsdetaljer, inkludert et automatisk generert passord, så sørg for at du lagrer påloggingsdetaljene dine.
Hvis du ikke blir omdirigert til admin-delen automatisk, kan du gå til følgende URL for å få tilgang til admin-delen manuelt:
http://YOUR_VULTR_IP_ADDRESS/admin
Hvis du fortsatt ikke får tilgang til admin-delen, kan du prøve å redigere noen av verdiene i .htaccessfilen i webroot-katalogen:
sudo vi .htaccess
Å fjerne kommentering av følgende .htaccessalternativer bør hjelpe:
Options -Indexes
Options -MultiViews
... og mens du er der, vil det ikke skade å avkommentere disse linjene også:
php_value upload_max_filesize 1000M
php_value post_max_size 1000M
php_value memory_limit 100M
Ikke glem å starte Apache på nytt etter at konfigurasjonen endres!
sudo systemctl restart httpd
Du er nå klar til å begynne å legge til innholdet ditt og konfigurere utseendet på nettstedet ditt. Sørg for å sjekke ut den utmerkede ImpressPages CMS-dokumentasjonen for mer informasjon om hvordan du bygger og konfigurerer nettstedet ditt.
Jeg håper du likte denne veiledningen, og lykke til med å utvikle din nye ImpressPages CMS-baserte nettside!