Fórum Root.cz

Hlavní témata => Server => Téma založeno: TomKala222 04. 08. 2020, 18:06:47

Název: WordPress na Apache vs. Nginx reverzní proxy
Přispěvatel: TomKala222 04. 08. 2020, 18:06:47
Ahoj,

popis prostředí:
WEB01 - centos8 s wordpressem který běží na apache.
Nginx01 - centos 7 - nginx reverzní proxy, provozuji za ní cca 5 webů vše OK, letsencrypt HTTPS - OK

Na WEB01 mám rozjeté httpd, uvodní stránka - OK
Po instalaci wordpressu lokálně taky vše OK.
Pokud vypublikuji dns záznam, požádám si na proxy o certifikát - uvodní stránka httpd OK ale na wordpressu se nenačítájí json a css + web wordressu je neuveritelne pomaly.

níže conf pro reverzní proxy pro muj testovací web01:

Kód: [Vybrat]
[root@nginx conf.d]# cat https.tomaskalabis.com.conf
server {

server_name https.tomaskalabis.com;

location / {

proxy_pass http://10.1.1.64/;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffering off;
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
}



    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/https.tomaskalabis.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/https.tomaskalabis.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}

server {
    if ($host = https.tomaskalabis.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


listen 80;
listen [::]:80;

server_name https.tomaskalabis.com;
    return 404; # managed by Certbot


}

wpconfig
na zacatku mam pridane:

Kód: [Vybrat]
define('FORCE_SSL_ADMIN', true);
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
 $_SERVER['HTTPS']='on';

na konci:

Kód: [Vybrat]
define('WP_HOME','https://https.tomaskalabis.com/wordpress');
define('WP_SITEURL','https://https.tomaskalabis.com/wordpress');


nemá s wp za reverzní proxy nginx zkušenosti ?
Bádám nad tím už delší dobu, ale pořád se mi nedaří  :(

díky
|tom

Název: Re:WordPress na Apache vs. Nginx reverzní proxy
Přispěvatel: kuldaoo 04. 08. 2020, 22:45:06
Ahoj, něco podobného jsem kdysi řešil. Zkus do wp-config.php přidat následující:

if ( $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' )
{
    $_SERVER['HTTPS']       = 'on';
    $_SERVER['SERVER_PORT'] = 443;
}


je třeba "říct" wordpressu, že je za proxy s https.
Název: Re:WordPress na Apache vs. Nginx reverzní proxy
Přispěvatel: Miroslav Šilhavý 05. 08. 2020, 08:30:54
Moje zkušenost je, že pro WP se nginx nehodí. Z nginx proxuju do Apache, který WP obsluhuje.
Funkce i bezpečnost WordPressu je zhusta založená na .htaccess obezličkách. Přechodem na nginx musíte neustále hlídat, i po každé aktualizaci, abyste všechna pravidla (i v podadresářích) přepsal do nginxu. Vzhledem k tomu, že WP je záhodno aktualizovat neustále, stává se z toho nesmyslná činnost.

To, že WordPress v roce 2020 neumí SSL offloading a načíst si potřebné z předaných hlaviček, mluví o úrovni WordPressu dostatečně.
Název: Re:WordPress na Apache vs. Nginx reverzní proxy
Přispěvatel: TomKala222 05. 08. 2020, 08:54:09
super ! diky moc za pomoc :)

/* That's all, stop editing! Happy publishing. */

if ( $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' )
{
    $_SERVER['HTTPS']       = 'on';
    $_SERVER['SERVER_PORT'] = 443;
}

už je to OK :)))
Název: Re:WordPress na Apache vs. Nginx reverzní proxy
Přispěvatel: okalousek 05. 08. 2020, 11:16:01
A pokud je to váš osobní web, tak raději od Wordpressu ruce pryč. Raději bych doporučil Jekyll.
Název: Re:WordPress na Apache vs. Nginx reverzní proxy
Přispěvatel: TomKala222 05. 08. 2020, 12:26:32
tohle je pouze pokus, osobně provozuji svůj blog na wedosu (wordpress) a stáhle bez HTTPS...  :-\
Chtěl jsem otestovat wordpress na centos8, který je za ngninx reverzní proxy centos7 a letsencrypt. Vše funguje jak má.
Otázkou je, zda se pouštět do migrace WP z wedosu do privántního cloudu právě s nginx proxy ale s přínosem HTTPS.
Další věcí je migrace... PHP 5.6 apod... ale nějak s tím budu muset pohnout
Zkusím rozjet reverzní proxy na apache a uvidím, jak si s tím poradí.