Loop senza fine di reindirizzamento con sito AWS ELB e wordpress utilizzando il plugin https di wordpress

Ho configurato un AWS ELB per indicare al mio server di Ubuntu che esegue WordPress 3.2.1. Tutto funzionava ottimamente sul server finché non l'ho messo dietro ad un bilanciatore di carico.

Imposta il bilanciatore di carico per inoltrare la port 80 alla port 80 e la port 443 alla port 80.

  • Assegnare un IP privato statico a un'istanza EC2
  • Possibile chiudere la port 80 e ancora utilizzare la port 443?
  • Amazon EC2 e RDS hanno memory ECC?
  • Posso utilizzare i caratteri jolly con certificati auto-firmati SAN?
  • Come posso vedere i miei crediti IOPS?
  • Impostazione del cluster di siti Web HA
  • Impostare il mio file host virtuale per controllare le intestazioni dal barbone:

    RewriteEngine On
    RewriteCond% {HTTP: X-Forwarded-Proto}! Https
    RewriteRule! / Status https: //% {SERVER_NAME}% {REQUEST_URI} [L, R]

    Ora, each volta che vado a un https url ho questo messaggio:

    Questa pagina ha un ciclo di reindirizzamento
    La pagina web a https://mywebsite.com/securepage/ ha provocato troppi reindirizzamenti

    Non appena disattivo il plugin https di wordpress
    ( http://wordpress.org/extend/plugins/wordpress-https/ )
    Le pagine funzionano ma sono ora piene di contenuti misti. le pagine che dovrebbero essere https non sono più https.

    Non appena accedo direttamente al server anziché attraverso l'argilla, funziona nuovamente.

    Qualche idea su come potessi get questo per lavorare con un AWS ELB?

  • È ansible visualizzare una pagina statica se tutte le istanze registrate ELB sono in discesa?
  • Nginx set_real_ip_from AWS ELB indirizzo di bilanciamento del carico
  • Forza HTTPS con bilanciatore di carico elastico AWS
  • Posso utilizzare i nuovi certificati AWS gratuiti SSL / TLS senza ELB o Beanstalk sul semplice EC2?
  • Messaggio di errore AWL ELB
  • Come posso impostare SPDY con Jetty dietro l'ELB di Amazon?
  • 3 Solutions collect form web for “Loop senza fine di reindirizzamento con sito AWS ELB e wordpress utilizzando il plugin https di wordpress”

    Potrei preoccupare di indovinare senza pubblicare la tua configuration ELB che l'ELB sta reindirizzando il traffico HTTPS (443 / tcp) all'istanza EC2 su HTTP (80 / tcp). Poi si è .htaccess e il plugin stanno cercando di reindirizzarlo indietro a HTTPS perché viene visto su HTTP.

    Vai a dare un'occhiata alla tua console EC2 in Network & Security > Load Balancers e immagino che vedrai che la Port Configuration della Port Configuration dice qualcosa lungo le linee di 443 forwarding to 80 (HTTPS, Certificate: blah)

    Provate ad aggiungere questo a httpd.conf o ad .htaccess

     SetEnvIfNoCase X-FORWARDED-PROTO "^https$" HTTPS 

    Quando si utilizza l'equalizzatore di carico + HTTPS, il tuo webserver non è a conoscenza del fatto che HTTPS viene utilizzato sul lato anteriore, quindi continua a tentare di redirect al sito HTTPS, quando in realtà HTTPS è già in uso.

    Quanto sopra tradurrà l'intestazione che Amazon Load Balancer invia ( X-Forwarded-Proto: https ) in una variabile di ambiente che WordPress e altri script PHP capiscono ( HTTPS=1 )

    Secondo Amazon qui https://d0.awsstatic.com/whitepapers/deploying-wordpress-with-aws-elastic-beanstalk.pdf la correzione è:

     /** Detect if SSL is used. This is required since we are terminating SSL either on CloudFront or on ELB */ if (($_SERVER['HTTP_CLOUDFRONT_FORWARDED_PROTO'] == 'https') OR ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) {$_SERVER['HTTPS']='on';} 

    Ho ancora finito con il ciclo infinito, quindi ho cambiato la mia configuration di WordPress da:

     define('WP_HOME','http://www.example.com'); define('WP_SITEURL','http://www.example.com'); 

    a:

     define('WP_HOME','https://www.example.com'); define('WP_SITEURL','https://www.example.com'); 

    Ciò obbligherà gli utenti a https, anche se digitano http, e rende più semplice lo sviluppo del sito offline perché si aggiorna solo WP_HOME all'host locale e https non è più il valore predefinito

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.