Nginx Multiple Domains
If you want to configure multiple mongrel clusters to be used with multiple domains or sub-domains then define multiple upstream blocks(for lack of any other name) and server blocks and add it to the same nginx config file.
For example, you can add this code to the sample Nginx config below the pre-existing server block:
upstream second_mongrel_cluster {
#### Replace these with the ports for your mongrel cluster:
server 127.0.0.1:10803;
server 127.0.0.1:10804;
}
server {
#### Replace with your nginx/pound port and sub-domain or domain name:
listen 127.0.0.1:80;
server_name example.com;
#### Replace with the full path to your rails app's public directory:
#### Make sure to point to right subdomains public folder here
root /var/www/virtual/example.com/rails/railsapp/public;
index index.html index.htm;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect false;
if (-f $request_filename/index.html) {
rewrite (.*) $1/index.html break;
}
if (-f $request_filename.html) {
rewrite (.*) $1.html break;
}
if (!-f $request_filename) {
# proxy pass to right upstream define here
proxy_pass http://second_mongrel_cluster;
break;
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
本文介绍如何在Nginx中配置多个域名或子域名,通过定义多个upstream块和server块来实现对不同mongrel集群的支持。示例展示了具体的配置代码,包括设置监听端口、指定Rails应用的公共目录路径及错误页面。
933

被折叠的 条评论
为什么被折叠?



