Hvordan installere ProcessWire CMS 3.0 på en FreeBSD 11 FAMP VPS

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 FreeBSD 11 FAMP VPS ved å bruke Apache-webserver, PHP 7.1 og en MariaDB-database.

Forutsetninger

  • En ren Vultr FreeBSD 11-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

Den sudokommandoen er ikke installert som standard i Vultr FreeBSD 11 server eksempel, så vil vi først installere sudo:

pkg install sudo

Legg til en ny bruker kalt user1(eller ditt foretrukne brukernavn):

adduser user1

Den adduserkommandoen vil be deg om mange detaljer for brukerkontoen, så velger du standardverdiene for de fleste av dem når det er fornuftig å gjøre det. Når du blir spurt om du vil Invite user1 into any other groups?, bør du skrive inn for wheelå legge user1til i wheelgruppen.

Sjekk nå /etc/sudoersfilen for å forsikre deg om at sudoersgruppen er aktivert:

visudo

Se etter en del som dette:

# %wheel        ALL=(ALL)       ALL

Denne linjen forteller oss at brukere som er medlemmer av wheelgruppen kan bruke sudokommandoen for å få rootprivilegier. Den vil bli kommentert ut som standard, så du må oppheve kommentaren og deretter lagre og avslutte filen.

Vi kan bekrefte user1gruppemedlemskapet med groupskommandoen:

groups user1

Hvis du user1ikke er medlem av wheelgruppen, kan du bruke denne kommandoen til å oppdatere user1gruppemedlemskapet:

pw group mod wheel -m 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 /etc/rc.d/sshd restart

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 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 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 FreeBSD 11-systemet

Før vi installerer noen pakker på FreeBSD-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 freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade

Trinn 3: Installer Apache Web Server

Installer Apache 2.4-nettserveren:

sudo pkg install apache24

Og skriv inn ynår du blir bedt om det. Bruk nå sysrckommandoen for å aktivere Apache-tjenesten til å kjøre automatisk ved oppstart:

sudo sysrc apache24_enable=yes

Den sysrckommandoen oppdaterer /etc/rc.confkonfigurasjonsfilen, så hvis du ønsker å kontrollere konfigurasjonen oppdateringen manuelt kan du bare åpne /etc/rc.conffilen med din favoritt terminal redaktør:

vi /etc/rc.conf

Start nå Apache-tjenesten:

sudo service apache24 start

Du kan raskt sjekke at apache kjører ved å besøke IP-adressen eller domenet til serverforekomsten i nettleseren din:

http://YOUR_VULTR_IP_ADDRESS/

Du vil se standard FreeBSD Apache-siden som viser teksten:

It works!

Sjekk Apache standard konfigurasjonsfil for å sikre at DocumentRootdirektivet peker til riktig katalog:

sudo vi /usr/local/etc/apache24/httpd.conf

Den DocumentRootkonfigurasjon alternativet vil se slik ut:

DocumentRoot "/usr/local/www/apache24/data"

Vi må nå aktivere mod_rewriteApache-modulen. Vi kan gjøre dette ved å søke i standard Apache-konfigurasjonsfilen for termen mod_rewrite.

Som standard vil mod_rewriteApache-modulen bli kommentert ut (som betyr at den er deaktivert). Konfigurasjonslinjen på en ren Vultr FreeBSD 11-forekomst vil se slik ut:

#LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Bare fjern hash-symbolet for å fjerne kommentaren til linjen og last inn modulen. Dette gjelder selvfølgelig også for alle andre nødvendige Apache-moduler:

LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Vi må nå redigere DirectoryApache-direktivet i den samme konfigurasjonsfilen slik at den mod_rewritefungerer riktig med ProcessWire CMS.

Finn delen av konfigurasjonsfilen som starter med <Directory "/usr/local/www/apache24/data">og endre AllowOverride nonetil AllowOverride All. Sluttresultatet (med alle kommentarer fjernet) vil se omtrent slik ut:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Lagre og avslutt 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 service apache24 restart

Trinn 4: Installer PHP 7.1

Vi kan nå installere PHP 7.1 sammen med alle nødvendige PHP-moduler som kreves av ProcessWire CMS:

sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip

FreeBSD 11 gir oss muligheten til å bruke en utvikling php.inieller en produksjon php.ini. Siden vi skal installere Siverstripe på en offentlig webserver, bruker vi produksjonsversjonen. Sikkerhetskopier først php.ini-production:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup

Deretter myklink php.ini-productiontil php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

We need to configure Apache to actually use PHP, so let's create a new file called php.conf in the Apache Includes directory:

sudo vi /usr/local/etc/apache24/Includes/php.conf

Enter the following text into the newly created file:

<IfModule dir_module>
    DirectoryIndex index.php index.html
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

Save and exit the file.

Now let's restart Apache so that it can reload the configuration changes:

sudo service apache24 restart

Step 5: Install MariaDB (MySQL) Server

FreeBSD 11 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 pkg install mariadb102-server mariadb102-client

Start and enable MariaDB server to execute automatically at boot time:

sudo sysrc mysql_enable="yes"
sudo service mysql-server start

Secure your MariaDB server installation:

sudo mysql_secure_installation

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 6: Create Database for ProcessWire 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 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;

You can replace the database name pw_db and username pw_user with something more to your liking, if you prefer. Also, make sure that you replace "UltraSecurePassword" with an actually secure password.

Trinn 7: Installer ProcessWire CMS-filer

Endre din nåværende arbeidskatalog til standard nettkatalog:

cd /usr/local/www/apache24/data

Din nåværende arbeidskatalog skal nå være: /usr/local/www/apache24/data. 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

Dekomprimer nå zip-arkivet:

sudo unzip master.zip

Flytt alle installasjonsfilene til webrotkatalogen:

sudo mv processwire-master/* /usr/local/www/apache24/data

Endre eierskap til nettfilene for å unngå problemer med tillatelser:

sudo chown -R www:www * ./

Start Apache på nytt:

sudo service apache24 restart

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:

  1. På velkomstsiden for ProcessWire CMS-installasjon klikker du på Get Startedknappen for å starte installasjonsprosessen.

  2. Velg nå din foretrukne installasjonsprofil (eller demoside) og klikk Continue.

  3. 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.

  4. 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
    
  5. Du kan la File Permissioninnstillingene stå på standardverdiene, eller du kan justere dem hvis du forstår implikasjonene.

  6. Du kan angi fremtidige vertsnavn for nettstedet ditt i den aktuelle delen, eller du kan redigere site/config.phpfilen senere hvis du foretrekker det.

  7. Klikk på for Continueå konfigurere databasen og installere ProcessWire CMS-filene.

  8. Velg deretter din foretrukne Admin Theme.

  9. Du kan endre Admin URLhvis du foretrekker det, eller du kan bare la den stå på standardverdien.

  10. 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>
    
  11. Når alle de riktige detaljene er angitt, kan du klikke for Continueå fullføre ProcessWire-installasjonen.

  12. 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 service apache24 restart

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.


Hvordan installere Tiny Tiny RSS-leser på en FreeBSD 11 FAMP VPS

Hvordan installere Tiny Tiny RSS-leser på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Tiny Tiny RSS Reader er en gratis og åpen kildekode selvhostet nettbasert nyhetsfeed (RSS/Atom) leser og aggregator, designet for å allo

Hvordan installere Wiki.js på FreeBSD 11

Hvordan installere Wiki.js på FreeBSD 11

Bruker du et annet system? Wiki.js er en gratis og åpen kildekode, moderne wiki-app bygget på Node.js, MongoDB, Git og Markdown. Wiki.js kildekode er offentlig

Hvordan installere Pagekit 1.0 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Pagekit 1.0 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Pagekit 1.0 CMS er et vakkert, modulært, utvidbart og lett, gratis og åpen kildekode Content Management System (CMS) med

Hvordan installere MODX Revolution på en FreeBSD 11 FAMP VPS

Hvordan installere MODX Revolution på en FreeBSD 11 FAMP VPS

Bruker du et annet system? MODX Revolution er et raskt, fleksibelt, skalerbart, åpen kildekode, enterprise-grade Content Management System (CMS) skrevet i PHP. Det jeg

Sett opp OpenBSD 5.5 64-bit

Sett opp OpenBSD 5.5 64-bit

Denne artikkelen leder deg gjennom å sette opp OpenBSD 5.5 (64-bit) på KVM med en Vultr VPS. Trinn 1. Logg på Vultr-kontrollpanelet. Trinn 2. Klikk på DEPLOY

Hvordan installere osTicket på FreeBSD 12

Hvordan installere osTicket på FreeBSD 12

Bruker du et annet system? osTicket er et åpen kildekode kundestøtte billettsystem. osTicket-kildekoden er offentlig vert på Github. I denne opplæringen

Hvordan installere Flarum Forum på FreeBSD 12

Hvordan installere Flarum Forum på FreeBSD 12

Bruker du et annet system? Flarum er en gratis og åpen kildekode neste generasjons forumprogramvare som gjør nettdiskusjoner morsomme. Flarum kildekode er vert for o

Slik aktiverer du TLS 1.3 i Nginx på FreeBSD 12

Slik aktiverer du TLS 1.3 i Nginx på FreeBSD 12

Bruker du et annet system? TLS 1.3 er en versjon av Transport Layer Security (TLS)-protokollen som ble publisert i 2018 som en foreslått standard i RFC 8446

Installer WordPress på OpenBSD 6.2

Installer WordPress på OpenBSD 6.2

Introduksjon WordPress er det dominerende innholdsstyringssystemet på internett. Den driver alt fra blogger til komplekse nettsteder med dynamisk innhold

Hvordan installere Subrion 4.1 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Subrion 4.1 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Subrion 4.1 CMS er et kraftig og fleksibelt innholdsstyringssystem (CMS) med åpen kildekode som gir et intuitivt og tydelig innhold

Hvordan konfigurere DJBDNS på FreeBSD

Hvordan konfigurere DJBDNS på FreeBSD

Denne opplæringen viser deg hvordan du konfigurerer en DNS-tjeneste som er enkel å vedlikeholde, enkel å konfigurere og som generelt er sikrere enn den klassiske BIN-en.

Slik installerer du Nginx, MySQL og PHP (FEMP) Stack på FreeBSD 12.0

Slik installerer du Nginx, MySQL og PHP (FEMP) Stack på FreeBSD 12.0

En FEMP-stack, som kan sammenlignes med en LEMP-stack på Linux, er en samling åpen kildekode-programvare som vanligvis installeres sammen for å aktivere en FreeBS

Installere MongoDB på FreeBSD 10

Installere MongoDB på FreeBSD 10

MongoDB er en NoSQL-database i verdensklasse som brukes ofte i nyere webapplikasjoner. Det gir høyytelsesspørringer, sharding og replikering

Hvordan installere Monica på FreeBSD 12

Hvordan installere Monica på FreeBSD 12

Bruker du et annet system? Monica er et åpen kildekodesystem for personlig relasjonsstyring. Tenk på det som et CRM (et populært verktøy som brukes av salgsteam i th

OpenBSD som en e-handelsløsning med PrestaShop og Apache

OpenBSD som en e-handelsløsning med PrestaShop og Apache

Introduksjon Denne opplæringen demonstrerer OpenBSD som en e-handelsløsning som bruker PrestaShop og Apache. Apache er nødvendig fordi PrestaShop har kompleks UR

Installere Fork CMS på FreeBSD 12

Installere Fork CMS på FreeBSD 12

Bruker du et annet system? Fork er et åpen kildekode CMS skrevet i PHP. Forks kildekode er vert på GitHub. Denne guiden viser deg hvordan du installerer Fork CM

Hvordan installere Directus 6.4 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Directus 6.4 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Directus 6.4 CMS er et kraftig og fleksibelt, gratis og åpen kildekode Headless Content Management System (CMS) som gir utviklere

Forbedre sikkerheten for FreeBSD ved å bruke IPFW og SSHGuard

Forbedre sikkerheten for FreeBSD ved å bruke IPFW og SSHGuard

VPS-servere er ofte målrettet av inntrengere. En vanlig type angrep dukker opp i systemlogger som hundrevis av uautoriserte ssh-påloggingsforsøk. Setter opp

Sett opp httpd i OpenBSD

Sett opp httpd i OpenBSD

Introduksjon OpenBSD 5.6 introduserte en ny demon kalt httpd, som støtter CGI (via FastCGI) og TLS. Ingen ekstra arbeid er nødvendig for å installere den nye http

Sett opp iRedMail på FreeBSD 10

Sett opp iRedMail på FreeBSD 10

Denne opplæringen viser deg hvordan du installerer gruppevaren iRedMail på en ny installasjon av FreeBSD 10. Du bør bruke en server med minst én gigabyte o

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer