Forutsetninger
Trinn 1: Legg til en Sudo-bruker
Trinn 2: Oppdater Ubuntu 16.04-systemet
Trinn 3: Installer Apache Web Server
Trinn 4: Installer PHP 7.0
Trinn 5: Installer MySQL Server
Trinn 6: Opprett database for ProcessWire CMS
Trinn 7: Installer ProcessWire CMS-filer
Trinn 8: Fullfør ProcessWire CMS-installasjonen
ProcessWire CMS 3.0 er et enkelt, fleksibelt og kraftig, gratis og åpen kildekode Content Management System (CMS). ProcessWire CMS 3.0 har en brukervennlig API-stil i jQuery-stil, fullt modulær plugin-arkitektur og et fleksibelt og kraftig malsystem som gir en like tilfredsstillende brukeropplevelse for designere, utviklere og sluttbrukere.
I denne opplæringen skal vi installere ProcessWire CMS 3.0 på en Ubuntu 16.04 LAMP VPS ved å bruke Apache-webserver, PHP 7.0 og en MariaDB-database.
Forutsetninger
- En ren Vultr Ubuntu 16.04 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):
adduser user1
Når du blir bedt om det, skriv inn et sikkert og minneverdig passord. Du vil også bli bedt om å oppgi "Fullt navn" og noen andre detaljer, men du kan bare la dem stå tomme ved å trykke Enter.
Sjekk nå /etc/sudoersfilen for å forsikre deg om at sudoersgruppen er aktivert:
visudo
Se etter en del som dette:
%sudo ALL=(ALL:ALL) ALL
Denne linjen forteller oss at brukere som er medlemmer av sudogruppen kan bruke sudokommandoen for å få rootprivilegier. Den skal være ukommentert som standard, slik at du ganske enkelt kan avslutte filen.
Deretter må vi legge user1til i sudogruppen:
usermod -aG sudo 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):
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 sudouten å måtte skrive inn et passord hver gang, åpner du /etc/sudoersfilen igjen ved å bruke visudo:
sudo visudo
Rediger seksjonen for sudogruppen slik at den ser slik ut:
%sudo 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 og mindre frustrerende, spesielt under lengre systemadministrasjonsøkter. 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 Ubuntu 16.04-systemet
Før vi installerer noen pakker på Ubuntu-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 kommandoer:
sudo apt-get update
sudo apt-get -y upgrade
Trinn 3: Installer Apache Web Server
Installer Apache-nettserveren:
sudo apt-get -y install apache2
Bruk systemctlkommandoen for å starte og aktivere Apache til å kjøre automatisk ved oppstart:
sudo systemctl enable apache2
sudo systemctl start apache2
Sjekk Apache-konfigurasjonsfilen din for å sikre at DocumentRootdirektivet peker til riktig katalog:
sudo vi /etc/apache2/sites-enabled/000-default.conf
Den DocumentRootkonfigurasjon alternativet vil se slik ut:
DocumentRoot "/var/www/html"
Vi må nå aktivere mod_rewriteApache-modulen, så sørg for at din standard konfigurasjonsfil for Apache-siden fortsatt er åpen, og legg til følgende DirectoryApache-direktiver rett før den avsluttende </VirtualHost>taggen, slik at slutten av konfigurasjonsfilen ser slik ut:
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Det viktigste direktivet vist ovenfor er AllowOverride All.
Lagre og avslutt filen, og aktiver mod_rewriteApache-modulen:
sudo a2enmod rewrite
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 apache2
Trinn 4: Installer PHP 7.0
Vi kan nå installere PHP 7.0 sammen med alle nødvendige PHP-moduler som kreves av ProcessWire CMS:
sudo apt-get -y install php php-gd php-mbstring php-common php-mysql php-imagick php-xml libapache2-mod-php php-curl php-zip
Trinn 5: Installer MySQL Server
Installer MySQL databaseserver:
sudo apt-get -y install mysql-server
Under MySQL-serverinstallasjonen, sørg for at du oppgir et sikkert passord for MySQL- rootbrukeren. Denne rootbrukeren er forskjellig fra rootbrukeren i Ubuntu, da den bare brukes til å koble til databaseserveren din med fulle rettigheter.
Start og aktiver MySQL-serveren til å kjøre automatisk ved oppstart:
sudo systemctl enable mysql
sudo systemctl start mysql
Sikre MySQL-serverinstallasjonen:
sudo mysql_secure_installation
Når du blir bedt om det, skriv inn passordet du opprettet for MYSQL- rootbrukeren under installasjonen. Svar ganske enkelt "Y" på alle de andre ja/nei-spørsmålene, da standardforslagene er de sikreste alternativene.
Trinn 6: Opprett database for ProcessWire CMS
Logg inn på MySQL-skallet som MySQL- rootbruker ved å kjøre følgende kommando.
sudo mysql -u root -p
For å få tilgang til MySQL-ledeteksten, skriv inn MySQL- rootpassordet når du blir bedt om det.
Kjør følgende spørringer for å opprette en MySQL-database og databasebruker for ProcessWire CMS:
CREATE DATABASE pw_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'pw_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON pw_db.* TO 'pw_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Du kan erstatte databasenavnet pw_dbog brukernavnet pw_usermed noe mer du liker, hvis du foretrekker det. Pass også på at du erstatter "UltraSecurePassword" med et faktisk sikkert passord.
Trinn 7: Installer ProcessWire CMS-filer
Endre din nåværende 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', prøv følgende kommando:
cd /var/www/ ; sudo mkdir html ; cd html
Din nåværende arbeidskatalog vil nå være: /var/www/html/. Du kan sjekke dette med pwdkommandoen (skriv ut arbeidskatalog):
pwd
Bruk nå for wgetå laste ned ProcessWire CMS-installasjonspakken:
sudo wget https://github.com/processwire/processwire/archive/master.zip
Merk: Du bør definitivt se etter den nyeste versjonen ved å gå til ProcessWire 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 apt-get -y install unzip
Dekomprimer nå zip-arkivet:
sudo unzip master.zip
Flytt alle installasjonsfilene til webrotkatalogen:
sudo mv processwire-master/* /var/www/html
Endre eierskap til nettfilene for å unngå problemer med tillatelser:
sudo chown -R www-data:www-data * ./
Start Apache på nytt:
sudo systemctl restart apache2
Trinn 8: Fullfør ProcessWire 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 ProcessWire CMS-installasjonssiden, skriv inn Vultr-forekomstens IP-adresse i nettleserens adresselinje, etterfulgt av index.php:
http://YOUR_VULTR_IP_ADDRESS/install.php
ProcessWire CMS-installasjonsprogrammet inneholder mange alternativer, så her er noen tips for å hjelpe deg:
På velkomstsiden for ProcessWire CMS-installasjon klikker du på Get Startedknappen for å starte installasjonsprosessen.
Velg nå din foretrukne installasjonsprofil (eller demoside) og klikk Continue.
Du vil se en Compatibility Checkside. Hvis du ser noen feil, betyr det sannsynligvis at du mangler noen PHP-moduler eller har et tillatelsesproblem, ellers kan du ganske enkelt klikke Continue.
Skriv inn følgende verdier på MySQL Database Settingssiden:
DB Name: pw_db
DB User: pw_user
DB Pass: UltraSecurePassword
DB Host: localhost
DB Port: 3306
Du kan la File Permissioninnstillingene stå på standardverdiene, eller du kan justere dem hvis du forstår implikasjonene.
Du kan angi fremtidige vertsnavn for nettstedet ditt i den aktuelle delen, eller du kan redigere site/config.phpfilen senere hvis du foretrekker det.
Klikk på for Continueå konfigurere databasen og installere ProcessWire CMS-filene.
Velg deretter din foretrukne Admin Theme.
Du kan endre Admin URLhvis du foretrekker det, eller du kan bare la den stå på standardverdien.
Skriv inn Admin Login Detailssom vist nedenfor:
User (a-z 0-9): <admin username>
Password: <admin password>
Password (again): <same admin password>
Email Address: <admin email address>
Når alle de riktige detaljene er angitt, kan du klikke for Continueå fullføre ProcessWire-installasjonen.
Når installasjonen er fullført, klikker du bare på Login to Adminknappen for å logge på Admin-delen.
Du kan se en advarsel som sier noe sånt som:
Warning: your server locale is undefined and may cause issues. Please add this to /site/config.php file (adjust en_US.UTF-8†as needed): setlocale(LC_ALL,'en_US.UTF-8');
Du kan fikse denne feilen ved å redigere site/config.phpfilen:
sudo vi site/config.php
Legg til riktig verdi på slutten av filen:
setlocale(LC_ALL,'en_GB.utf8');
Hvis du ikke kan finne ut hvilken verdi du skal bruke, kan du finne en liste over passende verdier for din bestemte serverforekomst ved å kjøre localekommandoen:
locale -a
Ikke glem å lagre og avslutte site/config.phpfilen når du er ferdig med å redigere.
For sikkerhets skyld må du endre tillatelsene på site/config.phpfilen:
sudo chmod 400 site/config.php
Start Apache på nytt:
sudo systemctl restart apache2
Du er klar til å begynne å legge til innholdet ditt og konfigurere utseendet på nettstedet ditt. Sørg for å sjekke ut den utmerkede ProcessWire CMS-dokumentasjonen for mer informasjon om hvordan du bygger og konfigurerer nettstedet ditt.