2012-06-14 152 views
0

是可以做以下使用nginx的重寫://my-cloudfoundry.com/app/home到SUB_DOMAIN_URL = HTTP:nginx的重寫規則的路由

從CTX_URL = HTTP轉換的URL ://app.my-cloudfoundry.com/home

凡我-cloudfoundry是運行Nginx的服務器,可目前的路線SUB_DOMAIN_URL,我希望它接受CTX_URL,並將其轉換內部以SUB_DOMAIN_URL

回答

1

這是完全可能的,事實上,我已經在使用vcap.me域的本地CloudFoundry副本上工作。 (需要在'〜/ cloudfoundry/.deployments/devbox/deploy/nginx/nginx-0.8.54/conf'中找到當前的vcap安裝程序),然後在nginx.conf中添加一個簡單的重寫規則,在服務器塊的server_name指令下面插入;

if ($host ~* "^vcap.me$"){ 
    rewrite ^\/([^\/]+)\/?(.*)$ http://$1.vcap.me/$2 break; 
    break; 
} 

很明顯,您需要將「vcap.me」更改爲您在配置中使用的域。

+0

謝謝丹,它的工作原理,但有一個小問題。重寫將發送一個重定向請求到瀏覽器,有沒有什麼辦法可以在內部路由而不發送重定向到瀏覽器。我正在嘗試這樣做,因爲我無法在我嘗試使用雲代工的工作網絡中配置子域。 – sriharsha