Installer Nginx med ngx_pagespeed på CentOS 7

Installer Nginx med ngx_pagespeed på CentOS 7

Scan din webserver for malware med ISPProtect nu. Få gratis prøveversion.

Ngx-sidespeed er et gratis og open source Nginx-modul, der kan bruges til at øge dit websted og reducere sidelastningstiden. Det virker ved automatisk at anvende bedste praksis på websider til sider og tilknyttede aktiver uden at kræve, at du ændrer dit eksisterende indhold eller workflow. Du kan nemt optimere forskellige filer som CSS, HTML, png og jpg ved hjælp af Ngx-sidespeed-modul.

Ngx-sidespeed kommer med masser af funktioner, nogle af dem er anført nedenfor:

  • Understøtter billed dynamisk resizing, genkomprimering og optimering.
  • Små ressourceindsats.
  • HTML omskrivning.
  • Cache livstidsudvidelse.
  • Udskyder JavaScript og billedindlæsning.

I denne vejledning vil vi diskutere, hvordan man kompilerer Nginx med ngx_pagespeed modul på CentOS 7 server.

Krav

  • Fresh CentOS 7 server installeret på dit system.
  • Sudo bruger med root privilegier.

1 Opdater systemet

Lad os begynde med at opdatere dit system til den seneste stabile version. Du kan gøre dette ved at køre følgende kommando:

sudo yum opdatering -y

Når systemet er opdateret, skal du genstarte systemet og logge ind med sudo-brugeren.

2 Installer nødvendige afhængigheder

Du skal installere nogle pakker for at kompilere Nginx. Du kan installere alle disse afhængigheder ved at køre følgende kommando:

sudo yum installere gcc cmake unzip wget gcc-c ++ pcre-devel zlib-devel -y

Når alle de nødvendige afhængigheder er installeret, kan du fortsætte til næste trin.

3 Kompilér Nginx med Ngx-sidespeed

For at installere Nginx med ngx-sidespeed modul skal du kompilere Nginx fra kilde. Først skal du downloade Nginx-kilden. Du kan downloade det ved at køre følgende kommando:

wget http://nginx.org/download/nginx-1.12.0.tar.gz

For at kompilere Nginx med ngx_pagespeed-modulet skal du også downloade ngx_pagespeed-kildepakken. Du kan downloade det med følgende kommando:

wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2-stable.zip

Når begge pakker er downloadet, Uddrag dem med følgende kommando:

tjære -xvzf nginx-1.12.0.tar.gz
tjære -xvzf v1.12.34.2-stable.zip

Derefter skal du også downloade PageSpeed ​​optimeringsbiblioteker til at kompilere Nginx. Du kan downloade det med følgende kommando:

cd ngx_pagespeed-1.12.34.2-stable
wget https://dl.google.com/dl/page-speed/psol/1.12.34.2-x64.tar.gz
tjære -xvzf 1.12.34.2-x64.tar.gz
cd ..

Lad os nu begynde at kompilere Nginx med sidespeed-modulet.

Først skal du ændre mappen til Nginx-kildemappen med følgende kommando:

cd nginx-xnumx

Konfigurer derefter Nginx-kilden med følgende kommando:

sudo ./configure -add-module = $ HOME / ngx_pagespeed-1.12.34.2-stable-bruger = ingen -group = ingen -pid-path = / var / run / nginx.pid $ {PS_NGX_EXTRA_FLAGS}

Når konfigurationen er gennemført, kompilér Nginx ved at køre følgende kommando:

sudo make

Ovennævnte kommando vil tage flere minutter. Derefter kan du installere nginx ved at køre følgende kommando:

sudo gør installationen

Når Nginx er installeret, skal du oprette en symlink til Nginx:

sudo ln -s / usr / local / nginx / conf / / etc / nginx
sudo ln -s / usr / local / nginx / sbin / nginx / usr / sbin / nginx

4 Opret Nginx Startup Script

Du skal også oprette et start script til Nginx for at stoppe og starte Nginx. Du kan gøre dette ved at oprette nginx-fil i /etc/init.d-mappen:

sudo nano /etc/init.d/nginx

Tilføj følgende linjer:

#! / bin / sh # # nginx - dette script starter og stopper nginx-dæmonen # # chkconfig: - 85 15 # description: NGINX er en HTTP (S) server, HTTP (S) reverse # proxy og IMAP / POP3 proxy server # procesnavn: nginx # config: /etc/nginx/nginx.conf # config: / etc / sysconfig / nginx # pidfile: /var/run/nginx.pid # Kildefunktionsbibliotek. . /etc/rc.d/init.d/functions # Kildenetværkskonfiguration. . / etc / sysconfig / network # Kontroller, at netværk er op. ["$ NETWORKING" = "nej"] && afslut 0 nginx = "/ usr / sbin / nginx" prog = $ (basenavn $ nginx) NGINX_CONF_FILE = "/ etc / nginx / nginx.conf" [-f / etc / sysconfig / nginx] &&. / etc / sysconfig / nginx lockfile = / var / lås / subsys / nginx make_dirs () {# gør nødvendige biblioteker bruger = `$ nginx -V 2> & 1 | grep "konfigurer argumenter:. * - user =" | sed 's / [^ *] * - bruger = ([^] *). * / 1 / g' -` hvis [-n "$ user"]; så hvis [-z "` grep $ user / etc / passwd` "]; derefter useradd -M -s / bin / nologin $ user fi muligheder = `$ nginx -V 2> & 1 | grep 'konfigurer argumenter:' `for opt in $ options; gør hvis [`echo $ opt | grep '. * - temp-path'`]; derefter værdi = `echo $ opt | cut -d "=" -f 2` hvis [! -d "$ værdi"]; derefter # echo "create" $ værdi mkdir -p $ værdi && chown -R $ user $ value fi fi done fi} start () {[-x $ nginx] || Afslut 5 [-f $ NGINX_CONF_FILE] || exit 6 make_dirs echo -n $ "Start $ prog:" daemon $ nginx -c $ NGINX_CONF_FILE retval = $? echo [$ retval -qq 0] && touch $ lockfile return $ retval} stop () {echo -n $ "Stop $ prog:" killproc $ prog -QUIT retval = $? ekko [$ retval -qq 0] && rm -f $ lockfile returnere $ retval} genstart () {configtest || returnere $? stop søvn 1 start} genindlæs () {configtest || returnere $? echo -n $ "Genindlæser $ prog:" killproc $ nginx -HUP RETVAL = $? echo} force_reload () {restart} configtest () {$ nginx -t -c $ NGINX_CONF_FILE} rh_status () {status $ prog} rh_status_q () {rh_status> / dev / null 2> & 1} tilfælde "$ 1" ) rh_status_q && exit 0 $ 1 ;; stop) rh_status_q || Afslut 0 $ 1 ;; genstart | configtest) $ 1 ;; genindlæs) rh_status_q || Afslut 7 $ 1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart | Prøv genstart) rh_status_q || Afslut 0 ;; *) echo $ "Anvendelse: $ 0 {start | stop | status | genstart | condrestart | prøv genstart | genindlæs | force-reload | configtest}" exit 2 esac

Gem og luk filen, når du er færdig, og giv derefter tilladelse til udførelse af det:

sudo chmod + x /etc/init.d/nginx

Start nu nginx service og aktiver den til at starte ved opstartstid med følgende kommando:

sudo systemctl start nginx
sudo systemctl aktivere nginx

Når du er færdig, kan du gå videre til næste trin.

5 Konfigurer Nginx

Nu er Nginx installeret med ngx-sidespeed support. Som standard er PageSpeed ​​deaktiveret. Før du aktiverer det, anbefales det at teste din hjemmesidehastighed. Derefter skal du oprette en cache-mappe til ngx-sidespeed og også tildele ejerskab til det til Nginx:

sudo mkdir -p / var / ngx_pagespeed_cache
sudo chown -R ingen: ingen / var / ngx_pagespeed_cache

Dernæst skal du foretage nogle ændringer i /etc/nginx/nginx.conf filen. Du kan gøre dette ved at køre følgende kommando:

sudo nano /etc/nginx/nginx.conf

Tilføj følgende kode mellem serverblokken:

# Pagespeed hovedindstillinger pagespeed on; sidespeed FileCachePath / var / ngx_pagespeed_cache; # Sørg for, at forespørgsler for siderne optimerede ressourcer går til sidespeed # handler og ingen udenlandske overskrifter bliver sat. Placering ~ ".pagespeed. ([az].) [az] {2}. [^.] {10}. [^.] +" {add_header "" ""; } placering ~ "^ / ngx_pagespeed_static /" {} placering ~ "^ / ngx_pagespeed_beacon" {}

Bemærk: Hvis du bruger virtual hosting, skal du tilføje de ovennævnte sidespeed-direktiver til hver serverblok config-fil for at aktivere siderne på hver hjemmeside.

Gem og luk filen, når du er færdig, og tjek derefter Nginx for en konfigurationsfejl med følgende kommando:

sudo nginx -t

Hvis alting er fint, skal du se følgende output:

nginx: konfigurationsfilen /usr/local/nginx/conf/nginx.conf syntaks er ok nginx: konfigurationsfil /usr/local/nginx/conf/nginx.conf testen er vellykket

Endelig genstart Nginx for ændringerne træder i kraft:

sudo systemctl genstart nginx

Når Nginx er konfigureret, kan du fortsætte med at teste Ngx-sidespeed.

6 Test Ngx-sidespeed

Nginx er nu i gang. Det er på tide at kontrollere, om modulet fungerer eller ej. Du kan tjekke det ved at køre følgende kommando:

curl -I -p http: // localhost

Du skal se følgende output:

HTTP / 1.1 200 OK Server: nginx / 1.12.0 Indholdstype: tekst / html Forbindelse: Fortsat levende Vary: Accept-Encoding Date: Ons, 21 Jun 2017 17: 21: 08 GMT X-side-hastighed: 1.12.34.2-0 Cache -Control: max-age = 0, no-cache

Du bør se X-Page-Speed ​​og det er versionsnummer i ovenstående output. Dette betyder at du har installeret Ngx_pagespeed på din server.

Konklusion

Tillykke! Du har installeret Nginx med Ngx-sidespeed modulsupport. Jeg håber, at du nu nemt kan implementere det i et produktionsmiljø. Du er velkommen til at kommentere mig, hvis du har spørgsmål.

Kilde

Efterlad en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.