Hvordan installere MODX CMS og Nginx på CentOS 7

MODX er et gratis innholdsstyringssystem med åpen kildekode skrevet i PHP. Den bruker MySQL eller MariaDB til å lagre databasen. MODX er designet for virksomheten der vedlikehold av en nettside er kritisk. Det gir fleksibilitet til utviklere til å lage et nettsted ved å velge sin egen design og struktur. Den har også en WYSIWYGeditor for ikke-tekniske brukere i virksomheten. I tillegg til å være fleksibel, kan den optimaliseres for lynrask hastighet.

Denne opplæringen ble skrevet for MODX 2.6.1 og kan også fungere for nyere versjoner.

Forutsetninger

  • En Vultr CentOS 7-serverforekomst.
  • En sudo-bruker .
  • Et domenenavn pekte mot forekomsten.

For denne opplæringen vil vi bruke modx.example.comsom domenenavnet peker mot Vultr-forekomsten. Sørg for å erstatte alle forekomster av eksempeldomenenavnet med det faktiske.

Oppdater basissystemet ditt ved å bruke veiledningen Hvordan oppdatere CentOS 7 . Når systemet ditt har blitt oppdatert, fortsett å installere avhengighetene.

Installer Nginx

Nginx er en produksjonswebserver for å kjøre webapplikasjoner. Installer Nginx.

sudo yum -y install epel-release
sudo yum -y install nginx

Start Nginx og aktiver den til å kjøre automatisk ved oppstart.

sudo systemctl start nginx
sudo systemctl enable nginx

Installer PHP 7.2

MODX støtter alle PHP-versjoner over 5.4. Vi vil installere den siste tilgjengelige versjonen av PHP. Bruk av PHP 7.2 vil sikre maksimal hastighet og sikkerhet. Legg til og aktiver Remi-depotet da PHP versjon 7.2 ikke er tilgjengelig i standarddepotet YUM.

sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php72

Installer PHP versjon 7.2 sammen med modulene som kreves av MODX.

sudo yum -y install php php-zlib php-mysqli php-curl php-json php-cli php-pear php-gd php-openssl php-xml php-mbstring php-fpm ImageMagick

Rediger den innlastede PHP-konfigurasjonsfilen.

sudo nano /etc/php.ini

Finn følgende linje. Fjern kommentaren og angi riktig tidssone.

date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate time zone

Sett også en passende minnegrense på følgende linje. Hvis du setter den til -1vil et skript gi ubegrenset tilgjengelig minne.

memory_limit = -1

Finn deretter følgende linje og sett verdien til 0etter å ha fjernet den.

cgi.fix_pathinfo=0

Lagre filen og åpne php-fpmkonfigurasjonsfilen.

sudo nano /etc/php-fpm.d/www.conf

Finn den eksisterende listen = 127.0.0.1:9000, kommenter den og legg til en ny linje som vist nedenfor.

;listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock

Endre også brukerne som vist nedenfor.

listen.owner = nginx
listen.group = nginx

...

user = nginx
group = nginx

Lagre filen og start php-fpmog aktiver den til å starte automatisk ved oppstart.

sudo systemctl restart php-fpm
sudo systemctl enable php-fpm

Gi skrivetillatelser til øktkatalogen.

sudo mkdir /var/lib/php/session
sudo chmod -R 777 /var/lib/php/session

Fortsett nå til installasjonen av MariaDB.

Installer MariaDB

MariaDB er en gaffel av MySQL. Legg til MariaDB-depotet til systemet ditt. Standarddepotet YUMinneholder en eldre versjon av MariaDB.

echo "[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1" | sudo tee /etc/yum.repos.d/mariadb.repo

Installer MariaDB.

sudo yum -y install mariadb mariadb-server

Start MariaDB og la den starte automatisk ved oppstart.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Før du konfigurerer databasen, må du sikre MariaDB.

sudo mysql_secure_installation

Du vil bli bedt om det gjeldende MariaDB-rotpassordet. Som standard er det ikke noe root-passord i en fersk MariaDB-installasjon. Trykk på " Enter"-tasten for å fortsette. Angi et sterkt passord for rootbrukeren av MariaDB-serveren din og svar " Y" på alle de andre spørsmålene som blir stilt. Spørsmålene som stilles er selvforklarende.

Logg inn på MySQL-skallet som root.

mysql -u root -p

Oppgi passordet for MariaDB-rotbrukeren for å logge på.

Kjør følgende spørringer for å opprette en database og en databasebruker for MODX-installasjonen.

CREATE DATABASE modx_data CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'modx_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON modx_data.* TO 'modx_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Du kan erstatte databasenavnet modx_dataog brukernavnet modx_useretter eget valg. Sørg for å endre StrongPasswordtil et veldig sterkt passord.

Installer MODX

Last ned MODX zip-arkivet.

wget https://modx.com/download/direct?id=modx-2.6.1-pl.zip -O modx.zip

Du kan alltid se etter lenken til den nyeste versjonen av applikasjonen på MODX-nedlastingssiden .

Installer unzip.

sudo yum -y install unzip

Pakk ut arkivet til webroot-katalogen til Nginx.

sudo unzip modx.zip -d /usr/share/nginx/

Endre navnet på katalogen.

cd /usr/share/nginx/
sudo mv modx-*/ modx/

Gi også nytt navn til ht.accessfilen til .htaccess.

sudo mv /usr/share/nginx/modx/ht.access /usr/share/nginx/modx/.htaccess

Opprett en sesjonsbufferkatalog og gi eierskap til nginx-brukeren.

sudo mkdir /usr/share/nginx/modx/core/cache
sudo chown nginx:nginx /usr/share/nginx/modx/core/cache

Til slutt oppretter du en tom konfigurasjonsfil og gir passende tillatelser.

sudo touch /usr/share/nginx/modx/core/config/config.inc.php
sudo chown -R nginx:nginx /usr/share/nginx/

Tillat trafikk på porter 80og 443gjennom brannmuren.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

Opprett virtuell vert

For å være vert for ditt MODX-nettsted, opprett en ny virtuell vert.

sudo nano /etc/nginx/conf.d/modx.example.com.conf

Fyll ut filen.

server {
        listen 80;
        server_name modx.example.com;
        root /usr/share/nginx/modx;
        index index.php;
        client_max_body_size 30M;
        location / {
                root /usr/share/nginx/modx;
                if (!-e $request_filename) {
                        rewrite ^/(.*)$ /index.php?q=$1 last;
                }
        }
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(.*)$;
                fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include fastcgi_params;
                fastcgi_ignore_client_abort on;
                fastcgi_param  SERVER_NAME $http_host;
        }

        location ~ /\.ht {
                deny  all;
        }
}

Test Nginx-nettserverkonfigurasjonen.

sudo nginx -t

Du vil se følgende utgang.

[user@vultr nginx]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Hvis du ikke ser noen feil i konfigurasjonen, start Nginx på nytt slik at den nye konfigurasjonen kan tre i kraft.

sudo systemctl restart nginx

Innpakning

Før du får tilgang til installasjonen, må du fullføre installasjonen via nettinstallasjonsprogrammet. Få tilgang til den nettbaserte installasjonen på http://modx.example.com/setup. Du vil se et grensesnitt for å endre språket for installasjonen.

Velg språk i henhold til dine preferanser og på neste side, velg alternativet " New Installation". På den følgende siden oppgir du MySQL- eller MariaDB-databaselegitimasjonen din og oppretter en ny administratorkonto. Til slutt klikker du på " Install"-knappen og installasjonsprogrammet vil skrive dataene inn i databasen.

På dette tidspunktet er du klar til å lage nettstedet ditt fra det administrative dashbordet.


Hvordan installere Thelia 2.3 på Debian 9

Hvordan installere Thelia 2.3 på Debian 9

Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i

Slik installerer du Microweber på CentOS 7

Slik installerer du Microweber på CentOS 7

Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg

Installere Microweber på Ubuntu 16.04

Installere Microweber på Ubuntu 16.04

Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg

Hvordan installere dotCMS på Ubuntu 16.04

Hvordan installere dotCMS på Ubuntu 16.04

Bruker du et annet system? DotCMS er et åpen kildekode, enterprise-grade innholdsstyringssystem skrevet i Java. Den inneholder nesten alle nødvendige funksjoner

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 BigTree CMS på en Fedora 26 LAMP VPS

Hvordan installere BigTree CMS på en Fedora 26 LAMP VPS

Bruker du et annet system? BigTree CMS 4.2 er et raskt og lett, gratis og åpen kildekode, enterprise-grade content management system (CMS) med omfattende

Installere Pagekit CMS på Ubuntu 16.04 LTS

Installere Pagekit CMS på Ubuntu 16.04 LTS

Bruker du et annet system? Pagekit er et åpen kildekode CMS skrevet i PHP. Pagekit-kildekoden er vert på GitHub. Denne veiledningen viser deg hvordan du installerer

Hvordan installere PyroCMS på Ubuntu 16.04

Hvordan installere PyroCMS på Ubuntu 16.04

Bruker du et annet system? PyroCMS er et åpen kildekode CMS skrevet i PHP. PyroCMS-kildekoden er vert på GitHub. I denne guiden går du godt gjennom hele

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 installere Backdrop CMS 1.8.0 på en Debian 9 LAMP VPS

Hvordan installere Backdrop CMS 1.8.0 på en Debian 9 LAMP VPS

Bruker du et annet system? Backdrop CMS 1.8.0 er et enkelt og fleksibelt, mobilvennlig, gratis og åpen kildekode Content Management System (CMS) som lar oss

Hvordan installere Roadiz CMS på Debian 9

Hvordan installere Roadiz CMS på Debian 9

Bruker du et annet system? Introduksjon Roadiz er et moderne CMS designet for å håndtere mange typer tjenester. Basert på Symfony-komponenter og Doctrine ORM, dvs

Installere Microweber på Debian 9

Installere Microweber på Debian 9

Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg

Hvordan installere Grav CMS på Fedora 28

Hvordan installere Grav CMS på Fedora 28

Bruker du et annet system? Grav er et åpen kildekode flat-fil CMS skrevet i PHP. Grav kildekode er offentlig vert på GitHub. Denne guiden viser deg hvordan t

Hvordan installere Grav CMS på Debian 9

Hvordan installere Grav CMS på Debian 9

Bruker du et annet system? Grav er et åpen kildekode flat-fil CMS skrevet i PHP. Grav kildekode er offentlig vert på GitHub. Denne guiden viser deg hvordan t

Hvordan installere Automad CMS på CentOS 7

Hvordan installere Automad CMS på CentOS 7

Bruker du et annet system? Automad er et åpen kildekode-filbasert innholdsstyringssystem (CMS) og malmotor skrevet i PHP. Automad-kildekoden i

Hvordan installere Raneto på Ubuntu 17.10

Hvordan installere Raneto på Ubuntu 17.10

Raneto er en gratis og åpen kildekode kunnskapsbase, bygget på Node.js som er enkel å sette opp og bruke, samt enkel å administrere. Kategorier og sider ar

Hvordan installere Thelia 2.3 på Ubuntu 16.04

Hvordan installere Thelia 2.3 på Ubuntu 16.04

Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i

Hvordan installere oktober 1.0 CMS på en Debian 9 LAMP VPS

Hvordan installere oktober 1.0 CMS på en Debian 9 LAMP VPS

Bruker du et annet system? Oktober 1.0 CMS er et enkelt og pålitelig, gratis og åpen kildekode Content Management System (CMS) bygget på Laravel-rammeverket

Hvordan installere ImpressPages CMS 5.0 på en Ubuntu 16.04 LAMP VPS

Hvordan installere ImpressPages CMS 5.0 på en Ubuntu 16.04 LAMP VPS

Bruker du et annet system? ImpressPages CMS 5.0 er et enkelt og effektivt, gratis og åpen kildekode, brukervennlig, MVC-basert Content Management System (CMS)

Hvordan installere CMS Made Simple 2.2 på en Debian 9 LAMP VPS

Hvordan installere CMS Made Simple 2.2 på en Debian 9 LAMP VPS

Bruker du et annet system? CMS Made Simple 2.2 er et fleksibelt og utvidbart, gratis og åpen kildekode Content Management System (CMS) intelligent designet for å

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