# Distributing controllers across several Rails servers and ur

**URL:** <https://www.ruby-forum.com/t/distributing-controllers-across-several-rails-servers-and-ur/82545>\
**Category:** Rails\
**Created:** [January 19, 2007, 4:31pm UTC](https://www.ruby-forum.com/t/distributing-controllers-across-several-rails-servers-and-ur/82545 "2007-01-19T16:31:14Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Marcus\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/cdc98d/32.png) [@Marcus\_R](https://www.ruby-forum.com/u/Marcus_R)\
**Post date:** [January 19, 2007, 4:31pm UTC](https://www.ruby-forum.com/t/distributing-controllers-across-several-rails-servers-and-ur/82545/1 "2007-01-19T16:31:14Z")

</div>

Hi,

I have an application which is split across two servers. Most of the  
application runs on one server, but one controller runs on another  
server. The second controller has no dependency on the first.

I need to generate links in the HTML that point to the second server.  
I’d like to keep the existing helper functions. The documentation  
for url\_for says I can pass in a :host option to specify a different  
server.

However, when I try the following in Edge Rails (version 5509):

\<%= url\_for(:action =\> “foo”, :controller =\> “bar”, :host =\>  
“hostname”, :protocol =\> “https”)%\>

it only renders

/bar/foo

Should url\_for work in the way I’m expecting? And if it does, will  
options like :host pass through form\_for and remote\_form\_for ?

Thanks

Marcus

---

<div class="post-metadata">

**Author:** ![Marcus\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/cdc98d/32.png) [@Marcus\_R](https://www.ruby-forum.com/u/Marcus_R)\
**Post date:** [September 25, 2007, 10:37pm UTC](https://www.ruby-forum.com/t/distributing-controllers-across-several-rails-servers-and-ur/82545/2 "2007-09-25T22:37:47Z")

</div>

On 1/12/07, Marcus R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> However, when I try the following in Edge Rails (version 5509):
> 
> \<%= url\_for(:action =\> “foo”, :controller =\> “bar”, :host =\>  
> “hostname”, :protocol =\> “https”)%\>
> 
> it only renders
> 
> /bar/foo

To follow up my own query, passing in :only\_path =\> false generates  
the full desired absolute URL

Marcus

---

<div class="post-metadata">

**Author:** ![Marcus\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/cdc98d/32.png) [@Marcus\_R](https://www.ruby-forum.com/u/Marcus_R)\
**Post date:** [September 25, 2007, 11:11pm UTC](https://www.ruby-forum.com/t/distributing-controllers-across-several-rails-servers-and-ur/82545/3 "2007-09-25T23:11:20Z")

</div>

Jason,

One problem I’ve hit is that AJAX security means it won’t access a  
different domain - for static files you’re fine, but it won’t work for  
javascript remoting, etc.

Marcus

---

<div class="post-metadata">

**Author:** ![Marcus\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/cdc98d/32.png) [@Marcus\_R](https://www.ruby-forum.com/u/Marcus_R)\
**Post date:** [September 25, 2007, 11:11pm UTC](https://www.ruby-forum.com/t/distributing-controllers-across-several-rails-servers-and-ur/82545/4 "2007-09-25T23:11:12Z")

</div>

Excellent. I’m writing an app right now that will use two domains - www.  
and static. for static content. This will help a lot. Thank you.

Jason
