如果有新旧两个站:
A 服:新站,www.AAA.com 用 Rails, nginx B 服:旧站, www.BBB.com 用 php
AAA 站的网址就是 Rails 的典型路由
BBB 站的网址一般都是以 index.php 开头的,比如 http://www.BBB.com/index.php?x=a&y=b
我希望通过 A 服上的 nginx 代理其上的 Rails 网站,并反向代理 B 服上的 php 网站。看了文档配置了一下,但是没搞定,有没有高人指个路,谢谢。
nginx 配置如下:
upstream puma_AAA_production {
server unix:/home/deploy/A/shared/tmp/sockets/puma_AAA.sock fail_timeout=0;
}
server {
listen 80;
server_name www.aaa.com;
root /home/deploy/AAA/current/public;
try_files $uri/index.html $uri @puma_AAA_production;
client_max_body_size 4G;
keepalive_timeout 10;
error_page 500 502 504 /500.html;
error_page 503 @503;
location ^~ /index.php* {
proxy_pass http://www.bbb.com/;
}
location @puma_AAA_production {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://puma_AAA_production;
# limit_req zone=one;
access_log /home/deploy/AAA/shared/log/nginx.access.log;
error_log /home/deploy/AAA/shared/log/nginx.error.log;
}
。。。