Sådan installeres WordPress på en LEMP-konfiguration

Introduktion

I denne vejledning lærer du, hvordan du installerer WordPress på en nyoprettet instans. Jeg vil demonstrere installationen på en Ubuntu 14.04-server. Disse instruktioner fungerer muligvis også på ældre versioner af Ubuntu og Debian.

Så lad os starte.

Trin et: Opdater eksisterende pakker

apt-get update && apt-get upgrade

Trin to: Installer Nginx

Nginx er en højtydende letvægts webserver designet med det formål at levere store mængder statisk indhold med effektiv brug af systemressourcer. I modsætning til Apache bruger Nginx en asynkron begivenhedsdrevet model, som giver mere forudsigelig ydeevne under belastning.

Lad os tilføje et tredjepartsdepot for at installere den seneste version af Nginx (1.6.1).

sudo apt-get install python-software-properties
add-apt-repository -y ppa:rtcamp/nginx
sudo apt-get update 
sudo apt-get install nginx
service nginx start

Lad os nu teste, om serveren er oppe og køre.

http://YOUR-VPS-IP

Det skulle tage dig til Nginx's standard landingsside.

Trin tre: Installer PHP 5.5

PHP er et udbredt open source scriptsprog til generelle formål, der er specielt velegnet til webudvikling og kan indlejres i HTML.

Lad os installere den nyeste version af PHP på vores server.

sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
sudo apt-get install php5-common php5-mysqlnd php5-xmlrpc php5-curl php5-gd php5-cli php5-fpm php-pear php5-dev php5-imap php5-mcrypt

Hvis du vil tjekke din PHP-version, skal du køre følgende kommando:

php -v

Du vil se noget som dette.

PHP 5.5.16-1+deb.sury.org~trusty+1 (cli) (built: Aug 25 2014 10:24:59)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
withZendOPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies

Nu vil vi foretage en lille konfigurationsændring for at gøre vores opsætning mere sikker. Åbn den primære php5-fpm-konfigurationsfil med root-rettigheder:

sudo nano /etc/php5/fpm/php.ini

Tryk på Ctrl+W og søg efter cgi.fix_pathinfo=. Fjern kommentarer (slet ;) og skift 1 til 0. Efter ændringer skal linjen se sådan ud:

cgi.fix_pathinfo=0

Gem ( Ctrl+O ) og luk filen ( Ctrl+X ).

Nu skal vi bare genstarte vores PHP-processor ved at skrive:

sudo service php5-fpm restart

Trin fire: Installer MySQL

For at gemme og administrere databaser skal vi installere MySQL. Du kan nemt installere det ved at skrive følgende i konsollen:

sudo apt-get install mysql-server

Under installationsprocessen bliver du bedt om at indstille en root-adgangskode til MySQL. Når du har indstillet root-adgangskoden, bliver vi nødt til at bede MySQL om at generere mappestrukturen, hvor den vil gemme databaser.

sudo mysql_install_db

Lad os afslutte det ved at køre et sikkerhedsscript, der vil ændre nogle standardusikkerheder.

sudo mysql_secure_installation

Indtast blot MySQL root-adgangskoden og skriv, nhvis du ikke vil ændre den. Skriv derefter ytil hvert spørgsmål.


Indstil tidszone (betinget)

Som standard er tidszonen på din server UTC. Hvis du bor i en anden tidszone, kan du ændre den ved at indtaste følgende kommando:

sudo dpkg-reconfigure tzdata

På dette tidspunkt er din LEMP-server oppe og køre.

Trin fem: Konfiguration af Nginx til at betjene Wordpress

Lad os starte vores Wordpress-installation ved at oprette en Nginx-serverblok til vores side.

sudo nano /etc/nginx/sites-available/wordpress

Indsæt følgende kode der:

server {
        listen 80;

        root /var/www/wordpress;
        index index.php index.html index.htm;

        server_name domain.com;

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
                root /usr/share/nginx/html;
        } 
location / {
                # try_files $uri $uri/ =404;
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }


        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

location = /favicon.ico {
        access_log off;
        log_not_found off;
        expires max;
}
location = /robots.txt {
        access_log off;
        log_not_found off;
}

# Cache Static Files For As Long As Possible
location ~*
\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$
{
        access_log off;
        log_not_found off;
        expires max;
}
# Security Settings For Better Privacy Deny Hidden Files
location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
}
# Return 403 Forbidden For readme.(txt|html) or license.(txt|html)
if ($request_uri ~* "^.+(readme|license)\.(txt|html)$") {
    return 403;
}
# Disallow PHP In Upload Folder
location /wp-content/uploads/ {
        location ~ \.php$ {
                deny all;
        }
}
}

Dette er en velafstemt Wordpress-konfigurationsfil med understøttelse af permalinks. Gem ( Ctrl+O ) og luk filen ( Ctrl+X ). Lad os aktivere serverblokken ved at symlinke:

sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress

Dernæst sletter vi Nginx-standardserverblokken.

sudo rm /etc/nginx/sites-enabled/default

Nu tuner vi Nginx-hovedkonfigurationsfilen:

sudo nano /etc/nginx/nginx.conf

Sørg for, at antallet af arbejdsprocesser er lig med antallet af kerner i din instans.

user www-data;
worker_processes 1;
pid /run/nginx.pid;

Tilføj brug epoll; til begivenhedsblokken.

events {
worker_connections 4096;
multi_accept on;
use epoll;
}

Tilføj client_max_body_size og server_tokens off-direktivet. Indstil keepalive_timeout til 30 sekunder.

        ##
        # Basic Settings
        ##

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
types_hash_max_size 2048;
server_tokens off;
client_max_body_size  100m;


        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

Sørg for, at hele Gzip-indstillingsblokken ser sådan ud:

        ##
        # Gzip Settings
        ##

gzip on;
gzip_disable "msie6";

gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

Gem ( Ctrl+O ) og luk filen ( Ctrl+X ). Genstart derefter serveren:

sudo service nginx restart

Trin seks: Konfigurer PHP

Hvis du vil uploade filer på mere end 2 MB til dit WordPress-websted, skal du øge PHP-uploadstørrelsesvariablerne i php.ini .

sudo nano /etc/php5/fpm/php.ini

Tryk nu på Ctrl+W og søg efter " upload_max_filesize " og indstil den til 100m .

upload_max_filesize=100M

Gør det samme med post_max_size . post_max_size skal have samme størrelse eller større end upload_max_filesize .

post_max_size=100M

Genstart PHP.

sudo service php5-fpm restart

Trin syv: Opsætning af MySQL-databasen

I dette trin opretter vi databasebrugeren og tabellerne. Gå videre og log ind på MySQL-skallen:

mysql -u root -p

Log ind med din MySQL root-adgangskode. Vi bliver nødt til at oprette en WordPress-database sammen med en bruger i databasen. Lad os først lave databasen (du er velkommen til at give den et hvilket som helst navn du vil):

CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

Derefter skal vi oprette en ny bruger. Erstat venligst databasen, navn og adgangskode med hvad du foretrækker:

CREATE USER wordpressuser@localhost;
Query OK, 0 rows affected (0.00 sec)

Indstil en adgangskode til din nye bruger:

SET PASSWORD FOR wordpressuser@localhost= PASSWORD("password");
Query OK, 0 rows affected (0.00 sec)

Afslut ved at give alle privilegier til den nye bruger. Uden denne kommando vil WordPress-installationsprogrammet ikke være i stand til at starte op:

GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

Opdater derefter MySQL:

FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

Afslut MySQL-skallen:

exit

Trin otte: Installation af WordPress-filer

Vi er næsten færdige. Lad os fortsætte med at installere WordPress.

Naviger først til webstedets rodmappe:

mkdir /var/www/
cd /var/www/

Download nu den seneste version af WordPress:

wget http://wordpress.org/latest.tar.gz

Uddrag det fra arkivet:

tar -xzvf latest.tar.gz

Giv tilladelser /var/www/wordpresstil www-databrugeren. Det vil tillade fremtidig automatisk opdatering af WordPress-plugins og filredigering med SFTP.

sudo chown -R www-data:www-data wordpress/
sudo usermod -a -G www-data www-data

Du er færdig! Din nye WordPress-side er nu klar. Du skal bare navigere til dit websted og afslutte installationen.

Efterlad en kommentar

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 lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.

DDOS-angreb: et kort overblik

DDOS-angreb: et kort overblik

Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.

Funktioner af Big Data Reference Architecture Layers

Funktioner af Big Data Reference Architecture Layers

Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.

Udvikling af datalagring – Infografik

Udvikling af datalagring – Infografik

Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af ​​dataene. Denne blog dækker udviklingen af ​​datalagring på basis af en infografik.

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af ​​mac-maskiner. Læs denne artikel for at lære mere