Wordpress rodando no erro Nginx Loadbalancer “A página não está redirecionando corretamente”

Wordpress rodando no erro Nginx Loadbalancer “A página não está redirecionando corretamente”

Então eu tenho essa configuração para meu wordpress.

Todos os servidores rodam em Centos 7 MariaDB 10.4.17 Php-FPM 7.4 PHP 7.4 NginX

Servidor 1, o servidor Front Load Balancing Servidor 2-3-4 o aplicativo wordpress servido com NginX Server 4 MariaDB

A configuração do balanceamento de carga do Nginx funciona bem com o info.php padrão em cada servidor 2-3-4. Eles trocam usando o round robin.

O wordpress por si só funciona bem no servidor 2-3-4. Eu tenho que alterar o URL do site e o URL inicial do wordpress no banco de dados wp-options para refletir o endereço IP do servidor. Por exemplo, se estou testando o servidor wp 2, o URL do site e o URL inicial são apontados para o servidor 2.

No segundo em que combinei todos os servidores 2-3-4 no LB com o wordpress, recebi este erro "A página não está redirecionando corretamente". Não tenho certeza se há certas configurações que precisam ser feitas para que o WP funcione no balanceador de carga Nginx. Algum conselho é como resolver o problema? Por favor ajude?

Minha configuração LB Nginx.

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
include /etc/nginx/conf.d/*.conf;

events {
    worker_connections 1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    root         /var/www/wp;

    sendfile        on;
    keepalive_timeout  65;



log_format upstreamlog '$server_name to : $upstream_addr [$request] '
'upstream_response_time $upstream_response_time '
'msec $msec request_time $request_time';

upstream big_server_com {
    ip_hash;
    server 192.168.1.32;
    server 192.168.1.33;
    server 192.168.1.34;



}

    server {
       server_name myserver.net wp.myserver.net;

#acces_log /var/log/nginx/access.log upstream.log;

    location ~ \.php$ {

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;


     fastcgi_pass   unix:/run/php-fpm/wp.sock;
        fastcgi_index index.php;
     proxy_pass      http://big_server_com;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
    try_files   $uri $uri/ /index.php?$query_string;
            }
            index  index.php;
        error_page  404              /404.html;
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/myserver.net/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/myserver.net/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
    ssl_dhparam /etc/ssl/certs/dhparam.pem; # managed by Certbot

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


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


        listen       80;
     server_name myserver.net wp.myserver.net;
    return 404; # managed by Certbot

}
}

Meu Wordpress wp-config

<?php

define( 'DB_NAME', 'wordpress' );

/** MySQL database username */
define( 'DB_USER', 'admin' );

/** MySQL database password */
define( 'DB_PASSWORD', '*************' );

/** MySQL hostname */
define( 'DB_HOST', '192.168.1.34' );

/** Database Charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );

/** The Database Collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
    define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );

/**#@-*/


$table_prefix = 'wp_';
define( 'WP_DEBUG', false );

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

/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
    define( 'ABSPATH', __DIR__ . '/' );
}

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';


if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) 
$_SERVER['HTTPS']='on';

define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST']);

define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST']);

Configuração NginX no servidor back-end

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
include /etc/nginx/conf.d/*.conf;

events {
    worker_connections 1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    root         /var/www/wp;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
     listen 192.168.1.32:80;
        server_name  wp2.myserver.net;
    location ~ \.php$ {
     fastcgi_pass   unix:/run/php-fpm/wp.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
    try_files   $uri $uri/ /index.php?$query_string;
            }
            index  index.php;
        error_page  404              /404.html;
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }

    } 

}

informação relacionada