Hvordan installere Wordpress på Ubuntu Server 18.04
Wordpress er uten tvil den mest brukte bloggplattformen på planeten. Men verktøyet kan brukes til mye mer enn bare blogging. Med riktig tillegg av utvidelser kan du forvandle Wordpress til en e-handelsside, en multimediaside og mye mer.
Hvis du tilfeldigvis har en egen server, kan du være vert for en Wordpress-installasjon, uten å måtte henvende deg til en tredjepart. Og det er akkurat det vi skal gjøre her. I denne opplæringen lærer du hvordan du installerer de nødvendige komponentene så vel som Wordpress-plattformen på Ubuntu Server 18.04. Dette vil bare forutsette én ting: At du har Ubuntu Server oppe og kjører.

Avhengigheter
Det første du må gjøre er å få LAMPEN (Linux Apache MySQL PHP) server oppe og kjører. Siden Ubuntu allerede er der, er alt som må gjøres å installere de sekundære komponentene. Fordi vi bruker Ubuntu, kan dette gjøres med en enkelt kommando. Men før vi gjør det, vil vi sørge for at serveren vår er oppdatert. Åpne et terminalvindu og utfør følgende kommandoer:
sudo apt-get oppdatering
sudo apt-get oppgradering.
Skulle kjernen bli oppgradert i prosessen, vil en omstart være nødvendig. Hvis det er tilfelle, må serveren startes på nytt (slik at endringene trer i kraft). Dette betyr at du bør kjøre oppdateringen/oppgraderingen på et tidspunkt da en omstart er mulig.
Med oppdateringen/oppgraderingen ute av veien, er det på tide å installere web-/databaseservere og PHP. Dette kan gjøres med en enkelt kommando:
sudo apt installer apache2 php mariadb-server.
Under installasjonen vil du bli bedt om å opprette/verifisere et passord for MySQL admin-brukeren. Når prosessen er fullført, kan du peke en nettleser til http://SERVER_IP (Hvor SERVER_IP er IP-adressen til Ubuntu-serveren din) for å se Apache-velkomstskjermen.
Deretter må vi installere noen nødvendige PHP-utvidelser. Dette kan gjøres med kommandoen:
sudo apt installer php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip.
Aktiverer SSL
Før vi kommer inn i konfigurasjonen av Apache og installasjonen av Wordpress, skal vi forberede serveren vår til å bruke SSL (Secure Sockets Layer), som er forskjellige nettprotokoller som jobber sammen for å pakke inn normal HTTP-trafikk i en beskyttet, kryptert innpakning. Så HTTP blir HTTPS. Siden jeg bare setter opp en testserver, vil jeg lage et selvsignert SSL-sertifikat for en IP-adresse. For å gjøre dette, følg disse trinnene.
Generer SSL-sertifikatet med følgende kommando:
sudo openssl req -x509 -noder -days 365 -newkey rsa: 2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt.
Når du kjører den kommandoen, må du svare på følgende spørsmål:
Landsnavn (2 bokstavskode) [AU]:
Navn på staten eller provinsen (fullt navn) [en delstat]:
Lokalitetsnavn (f.eks. by) []:
Organisasjonsnavn (f.eks. firma)[]
Organisasjonsenhetsnavn (f.eks. seksjon) []:
Vanlig navn (f.eks. server FQDN eller DITT navn) []:
Epostadresse []:
Det er viktig, for det selvsignerte sertifikatet, at du skriver inn IP-adressen til serveren din for Common Name-oppføringen.
Deretter konfigurerer vi Apache til å bruke SSL. Opprett en ny fil med kommandoen:
sudo nano /etc/apache2/conf-available/ssl-params.conf.
I den nye filen limer du inn følgende:
SSLcipherSuite EECDH+AESGCM: EDH+AESGCM: AES256+EECDH: AES256+EDH
SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder på
# Deaktiver forhåndsinnlasting av HSTS for nå. Du kan bruke den kommenterte overskriftslinjen som inkluderer
# "preload"-direktivet hvis du forstår implikasjonene.
# Header sett alltid Strict-Transport-Security "max-age=63072000; includeSubDomains; forhåndslast"
Header alltid satt X-Frame-Options DENY
Header alltid satt X-Content-Type-Options nosniff
# Krever Apache >= 2.4
SSLCompression av
SSLUseStapling på
SSLStaplingCache "shmcb: logs/stapling-cache (150000)"
# Krever Apache >= 2.4.11
SSLSessionBilletter av.
Nå skal vi lage en ny default-ssl.conf-fil. Før vi gjør det, sikkerhetskopierer originalen med kommandoen:
sudo cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.bak.
Opprett den nye filen med kommandoen:
sudo nano /etc/apache2/sites-available/default-ssl.conf.
I den nye filen limer du inn følgende:
ServerAdmin DIN_EMAIL
Servernavn SERVER_IP
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log kombinert
SSLengine på
SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key
SSLOptions +StdEnvVars
SSLOptions +StdEnvVars
Lagre og lukk filen.
Nå skal vi sette opp en omdirigering slik at all HTTP-trafikk automatisk omdirigeres til HTTPS. For å gjøre dette, lag en ny fil med kommandoen:
sudo nano /etc/apache2/sites-available/000-default.conf.
I den filen legger du til følgende linje under DocumentRoot-oppføringen:
Omdirigere "/" " https://SERVER_IP/”
Der SERVER_IP er IP-adressen til serveren din.
Lagre og lukk filen.
Deretter må vi aktivere noen få moduler og verter med kommandoene:
sudo a2enmod ssl
sudo a2enmod-overskrifter
sudo a2ensite default-ssl
sudo a2enconf ssl-params.
Til slutt, start Apache på nytt med kommandoen:
sudo systemctl start apache2 på nytt.
Du skal nå kunne peke nettleseren til https://SERVER_IP (Hvor SERVER_IP er IP-adressen til serveren din) og fortsatt se Apache-velkomstskjermen.
Databasen
Før du begynner å sette opp databasen din, bør du bruke MariaDB/MySQL sin innebygde funksjon for å sikre den nye installasjonen. Kjør kommandoen og godta standardinnstillingene for å sikre databasen. Når du blir spurt, sett opp et sikkert passord for databasens root-bruker.
sudo mysql_secure_installation
Når det er fullført, er du klar til å begynne å jobbe med MariaDB ved å bruke "mysql"-kommandoen.
Wordpress er avhengig av en database for å fungere. For å lage det, må du først logge på MySQL-ledeteksten med kommandoen:
sudo mysql -u rot -p.
Du vil bli bedt om MySQL-admin-brukerpassordet du opprettet under LAMP-serverinstallasjonen. Ved MySQL-ledeteksten oppretter du databasen med kommandoen:
LAG DATABASE wordpress STANDARD TEGNSETT utf8 SAMLER utf8_unicode_ci;
Deretter oppretter du en ny bruker og gir brukeren tillatelse til å få tilgang til databasen med kommandoen:
GIR ALLE PÅ wordpress.* TIL 'wordpressuser'@'localhost' IDENTIFISERT MED 'PASSORD';
Der PASSORD er et unikt, sterkt passord.
Skyll databaserettighetene og avslutt med kommandoene:
SPILLE PRIVILEGIER;
EXIT.
Tillat .htaccess og aktiver Rewrite-modulen
Vi må aktivere .htaccess for Wordpress. For å gjøre dette, lag en ny Apache-konfigurasjonsfil med kommandoen:
sudo nano /etc/apache2/sites-available/wordpress.conf.
I den filen limer du inn følgende:
Tillat Overstyr alle
Aktiver omskrivingsmodulen med kommandoen:
sudo a2enmod omskrive.
Start Apache på nytt med kommandoen:
sudo systemctl start apache2 på nytt.
Last ned, pakk ut og klargjør Wordpress
Vi skal laste ned den offisielle Wordpress-filen med følgende kommandoer:
cd /tmp
krøll -O https://wordpress.org/latest.tar.gz.
Pakk ut Wordpress med kommandoen:
tar xvzf siste.tar.gz.
Opprett en dummy .htaccess-fil med kommandoen:
trykk på /tmp/wordpress/.htaccess.
Kopier eksempelkonfigurasjonsfilen til den nødvendige konfigurasjonsfilen med kommandoen:
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php.
Opprett en oppgraderingskatalog (for å unngå problemer med tillatelser) med kommandoen:
mkdir /tmp/wordpress/wp-content/upgrade.
Kopier innholdet i wordpress-katalogen til dokumentroten med kommandoen:
sudo cp -a /tmp/wordpress/. /var/www/html/wordpress.
Til slutt, juster eierskapet og tillatelsene til den nylig flyttede wordpress-katalogen med kommandoene:
sudo chown -R www-data: www-data /var/www/wordpress
sudo finn /var/www/wordpress/ -type d -exec chmod 750 {} \;
sudo finn /var/www/wordpress/ -type f -exec chmod 640 {} \;
Konfigurere Wordpress
Denne delen blir litt komplisert. Filen wp-config.php må redigeres, men før det kan gjøres, må du laste ned unike hemmelige nøkler som skal legges til i konfigurasjonsfilen. For å få disse nøklene, besøk nettgenerator fra WordPress-utviklerne.
Dette vil sende ut en rekke lange strenger, hver assosiert med et spesifikt konfigurasjonsalternativ. Hver streng er knyttet til følgende verdier i konfigurasjonsfilen:
AUTH_KEY
SECURE_AUTH_KEY
LOGGED_IN_KEY
NONCE_KEY
AUTH_SALT
SECURE_AUTH_SALT
LOGGED_IN_SALT
NONCE_SALT
Kopier disse verdiene til en annen fil. Åpne deretter Wordpress-konfigurasjonsfilen med kommandoen:
sudo nano /var/www/wordpress/wp-config.php.
Finn verdiene ovenfor og lim inn den hemmelige nøkkelen for hver. Rull deretter opp og rediger verdiene for:
DB_NAME
DB_USER
DB_PASSWORD
Verdiene ovenfor ble opprettet tidligere (med MySQL).
Lagre og lukk filen.
Fullfør installasjonen

Du kan nå peke nettleseren til https://SERVER_IP/wordpress og gå gjennom det nettbaserte installasjonsprogrammet for å fullføre installasjonen. Etter et par klikk og litt skriving vil forekomsten av Wordpress være oppe og kjøre.