Nginx

nginx 反向代理到 apache-wordpress 工作,但 proxy_pass 到外部 url 失敗

  • September 24, 2018

我有一個適用於 apache wordpress 的 nginx 反向代理設置,效果很好。但是,基於位置需要重定向到失敗的外部 url。請檢查以下配置。這是一個有效的設置嗎?

有什麼幫助嗎?

server {
   listen 443 ssl default_server;
   listen [::]:443 default_server;

   server_name platform.com;
   server_tokens off;

   root /var/www/html/def/public/;
   index index.php;

   ssl on;
   ssl_certificate /tmp/fgh.crt;
   ssl_certificate_key /tmp/fgh.pem;

   access_log /var/log/nginx/access2.log;
   error_log /var/log/nginx/error2.log;

   location / {
           proxy_set_header X-Forwarded-Proto $scheme;
           try_files $uri @apache;
   }

   location @apache {
           proxy_set_header X-Real-IP  $remote_addr;
           proxy_set_header X-Forwarded-For $remote_addr;
           proxy_set_header X-Forwarded-Proto $scheme;
           proxy_set_header Host $host;
           proxy_pass http://127.0.0.1:8080;
   }

    location ~[^?]*/$ {
           proxy_set_header X-Real-IP  $remote_addr;
           proxy_set_header X-Forwarded-For $remote_addr;
           proxy_set_header Host $host;
           proxy_pass http://127.0.0.1:8080;
    }

    location /pen {
           proxy_pass https://abcdef.com;
   }
  }

將伺服器名稱(wordpress 站點)從 http 前綴更改為 www 前綴後,代理傳遞重定向工作。必須將所有 http https 伺服器塊重定向到 nginx 配置中的 www 伺服器塊

引用自:https://serverfault.com/questions/931518