esittely

Nginx ja Apache ovat suosituimmat avoimen lähdekoodin palvelimet, joita käyttävät jopa suuren liikenteen tuottavat verkkosivustot. Tässä opetusohjelmassa kuvaamme kuinka käyttää molempia web-palvelimia, mutta eri toiminnoilla. Apache-verkkopalvelin ajaa WordPress-verkkosivustoa nginx-palvelimen takana (asennetulla SSL-sertifikaatilla), joka toimii apache-palvelimen käänteisenä välityspalvelimena. Tässä tapauksessa Nginxiä käytetään käänteisenä välityspalvelimena, joka käsittelee kaikkia SSL-yhteyksiä Apachen puolesta, kun Apache on silti web-palvelin. Tämä on yksi monista Nginxin käytöistä käänteisenä välityspalvelimena.


Siksi kaikki käyttäjien selainten URL-yhteydet osuvat ensin Nginx-käänteiseen välityspalvelimeen ja heidän on pakko olla HTTPS-protokollassa palvelimen asennetun SSL-varmenteen avulla. Sitten Nginx välittää kaikki pyynnöt Apache-verkkopalvelimelle, jolla on WordPress-sivusto. Tämän seurauksena on erittäin tärkeää määrittää molemmat palvelimet kuuntelemaan eri portteja konfliktien välttämiseksi.

>Tässä opetusohjelmassa kuvaamme kuinka asentaa SSL-varmenne Nginx reverse proxy -sovellukseen WordPress-verkkosivustolle, jota ylläpidetään Apache-verkkopalvelimella..

Edellytykset

Oletetaan, että WordPress ja Apache on asennettu, konfiguroitu ja toimivat hyvin CentOS 7 Linux Server -palvelimella.

Asentaa & Määritä Nginx

Suorita komennot asentaaksesi nginx-palvelimen

$ sudo yum install epel-release
$ sudo yum install nginx

Muokkaa apachen määritystiedostoa

$ sudo vim /etc/httpd/conf/httpd.conf

Vaihda kuunteluportti toiseen porttiin (esim. 8080) muokkaamalla linjaa seuraavasti.

Kuuntele 8080

Tämän tarkoituksena on estää nginxia kuuntelemasta samaa porttia kuin Apache, joten nyt nginx kuuntelee porttia 80, kun taas apache kuuntelee porttia 8080.

Avaa portti 8080 palomuurissa:

$ sudo firewall-cmd – pysyvä –add-port = 8080 / tcp
$ sudo firewall-cmd – lataa

Käynnistä apache-palvelu uudelleen

$ sudo systemctl käynnistä httpd uudelleen

alkaa & Ota nginx käyttöön

$ sudo systemctl Käynnistä nginx
$ sudo systemctl sallii nginx: n

Varmista, että nginx toimii hyvin, käyttämällä curl-osoitetta osoittamaan sen nimi ja versio HTTP-otsikoissa

$ curl -I http: // localhost

Määritä Nginx SSL: lle

Poista kokonainen osa https (ssl) -palvelimen osasta, ts.

# TLS-käytössä olevan palvelimen asetukset

Luo SSL-varmenne

Tee ensin nginx- ja yksityiset hakemistot seuraavasti

$ sudo mkdir -p / etc / pki / nginx / private

Luo sitten avaimet:

$ sudo openssl req -x509-nodes -sha256 -days 365 -newkey rsa: 2048 -keyout /etc/pki/nginx/private/server.key -out /etc/pki/nginx/server.crt

Erityinen huomautus: Varmista, että 443-portti sallitaan palomuurin kautta seuraavasti:

$ sudo palomuuri-cmd – pysyvä –add-port = 443 / tcp
$ sudo firewall-cmd – lataa

Muokkaa Rhe nginx.conf Dile -sovellusta salliaksesi käänteisen välityspalvelimen passin Apachelle

Palvelimen (http) osan alla – ensimmäinen osa: Korvaa sijaintiosa seuraavalla.

sijainti / {
try_files $ uri @apache;
}

sijainti @apache {
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header X-välitetty-For $ remote_addr;
proxy_set_header X-Forward-Proto $ -järjestelmä;
proxy_set_header Host $ host;
proxy_pass http://127.0.0.1:8080;
}

sijainti ~ [^?] * / $ {
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header X-välitetty-For $ remote_addr;
proxy_set_header X-Forward-Proto $ -järjestelmä;
proxy_set_header Host $ host;
proxy_pass http://127.0.0.1:8080;
}

sijainti ~ \ .php $ {
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header X-välitetty-For $ remote_addr;
proxy_set_header X-Forward-Proto $ -järjestelmä;
proxy_set_header Host $ host;
proxy_pass http://127.0.0.1:8080;
}

sijainti ~ / \. {
kieltää kaikki;
access_log pois;
loki ei löydy;
}

Palvelimen (https) osan alla – toinen osa: Korvaa sijaintiosa seuraavalla.

sijainti / {
try_files $ uri @apache;
}

sijainti @apache {
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header X-välitetty-For $ remote_addr;
proxy_set_header X-Forward-Proto $ -järjestelmä;
proxy_set_header Host $ host;
proxy_pass http://127.0.0.1:8080;
}

sijainti ~ [^?] * / $ {
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header X-välitetty-For $ remote_addr;
proxy_set_header X-Forward-Proto $ -järjestelmä;
proxy_set_header Host $ host;
proxy_pass http://127.0.0.1:8080;
}

sijainti ~ \ .php $ {
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header X-välitetty-For $ remote_addr;
proxy_set_header X-Forward-Proto $ -järjestelmä;
proxy_set_header Host $ host;
proxy_pass http://127.0.0.1:8080;
}

sijainti ~ / \. {
kieltää kaikki;
access_log pois;
loki ei löydy;
}

Siirry Mozillan Wiki-sivustoon, jos haluat suositellut salausohjelmat> ja liitä salakirjoitussivut toisen palvelimen (https) -osan salausosastoon.

ssl_ciphers ‘ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA20-POLY1ESA: ECDHE-EC25 RSA-AES128-GCM-SHA256: ECDHE-ECDSA-AES256-SHA384: ECDHE-RSA-AES256-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128-SHA256 ‘;

Tallenna sitten tiedosto:

Määritä WordPress

Muokkaa wp-config-tiedostoa, jotta uudelleenohjaus sallitaan https: ään lisäämällä alla oleva koodi:

define (‘FORCE_SSL_ADMIN’, tosi);
if (strpos ($ _ SERVER [‘HTTP_X_FORWARDED_PROTO’], ‘https’)! == vääriä)
$ _SERVER [https] = ‘päälle’;
$ sudo vim /var/www/html/wp-config.php

Tallenna tiedosto

Anna oikeudet httpd- ja nginx-yhteyksiin SELinuxin kautta

$ sudo setsebool -P httpd_can_network_connect 1

Siirry sivuston wp-admin-hallintapaneeliin

asetukset > Yleinen, vaihda sitten "http" että "https" molemmille "WordPress-osoite (URL)" ja "Sivuston osoite (URL)"

Ja tallenna muutokset

Pakota ohjaamaan kaikki liikenne https: ään

Muokkaa nginx.conf-tiedostoa lisäämällä rivi http-palvelin-osioon

palauta 301 https: // $ palvelimen_nimi $ pyyntö_uri;

Käynnistä uudelleen sekä nginx- että apache-palvelut

$ sudo systemctl käynnistä uudelleen nginx httpd

Nyt meillä on WordPress-sivusto, jolla on itse allekirjoitettu SSL-varmenne alla olevan kuvan mukaisesti:

https://35.225.251.235

johtopäätös

Nyt sinulla on täysin toimiva WordPress-verkkosivusto, jolla on SSL-varmenne. Vaikka nginx-palvelin toimii käänteisenä välityspalvelimena, se toimii avoimesti ja saumattomasti Apache-verkkopalvelimen kanssa. Tämän vuoksi näyttää siltä, ​​että pyynnöt toimitettaisiin suoraan Apache-verkkopalvelimelle. Se on todellakin yksi tehokkaimmista tavoista suojata verkkosivustosi ja vähentää hakkereiden haavoittuvuutta.

Jos joudut vaikeuksiin, kysy apua verkkoisäntäsi tukipalvelulta – heidän pitäisi voida auttaa. Jos he eivät voi, HostaAdvice voi suositella parhaita VPS-palveluntarjoajia, parhaita WordPress-palveluntarjoajia ja parhaita Linux-isännöintipalveluita (riippuen etsimästäsi). Kunkin luokan parhaimmat valitsijat tunnetaan tarjoavan erinomaista asiakaspalvelua ja tukea.

Katso nämä WordPressin 3 parasta isännöintipalvelua:

FastComet

Aloitushinta:
$ 2,95


Luotettavuus
9.7


hinnoittelu
9,5


Käyttäjäystävällinen
9.7


Tuki
9.7


ominaisuudet
9.6

Lue arvosteluja

Käy FastCometissa

Hostinger

Aloitushinta:
$ 0.99


Luotettavuus
9,3


hinnoittelu
9,3


Käyttäjäystävällinen
9.4


Tuki
9.4


ominaisuudet
9.2

Lue arvosteluja

Käy Hostinger

A2-hosting

Aloitushinta:
$ 3,92


Luotettavuus
9,3


hinnoittelu
9.0


Käyttäjäystävällinen
9,3


Tuki
9,3


ominaisuudet
9,3

Lue arvosteluja

Käy A2-hosting-palvelussa

Aiheeseen liittyvät ohjeartikkelit

  • Kuinka määrittää Nginx käänteisenä välityspalvelimena Apachelle Ubuntu 16.04 VPS: ssä tai erillisessä palvelimessa
    asiantuntija
  • Kuinka asentaa salataan Nginxillä Ubuntu 18.04 VPS: llä tai erillisellä palvelimella
    väli-
  • Kuinka lisätä ilmainen SSL WordPressiin käyttämällä salausta
    väli-
  • Kuinka asentaa WordPress Nginxin kanssa & redis
    newbie
  • Kuinka asentaa WordPress Nginxin kanssa & Paranna uudelleen CentOS VPS: ssä tai erillisessä palvelimessa
    väli-
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me