# Can map.root to point to a static html file in public dir?

**URL:** <https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135>\
**Category:** Rails\
**Created:** [March 6, 2009, 4:20am UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135 "2009-03-06T04:20:08Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 4:20am UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/1 "2009-03-06T04:20:08Z")

</div>

Hi all,

I’m trying to get map.root to point to a static html file in the public  
directory. I can’t just have index.html since I’m doing subdomains and  
any index.html file in there will be used as the actual page displayed.

Basically I can point to my subdomain roots just fine, but I need to  
find a way to point map.root to a specific html file. For example,  
something like this: map.root :url =\> ‘homepage.html’

That example doesn’t work obviously.

Any input would be greatly appreciated. If you need any more info,  
please let me know! Thanks.

-Tony

---

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 4:22pm UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/2 "2009-03-06T16:22:31Z")

</div>

On Thu, Mar 5, 2009 at 7:20 PM, Tony T.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> I’m trying to get map.root to point to a static html file in the public  
> directory. I can’t just have index.html since I’m doing subdomains and  
> any index.html file in there will be used as the actual page displayed.

Sorry, missing something here –

What’s the difference between using static file “index.html” and static  
file “homepage.html”?

–  
Hassan S. ------------------------ removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 5:54pm UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/3 "2009-03-06T17:54:52Z")

</div>

On Fri, Mar 6, 2009 at 7:37 AM, Tony T.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> What I want is to have my subdomain root (ex. [user.app.com](http://user.app.com)) to point to  
> the user login page (which I currently have working) and the domain root  
> (ex. [app.com](http://app.com)) to have a typical welcome/signup index page. This index  
> page is going to be 100% static so I’d prefer to just have it as a file  
> (say homepage.html) in the public directory. I realize I could get this  
> working by creating a ‘page’ controller and view and then direct  
> map.root to that specific controller/view but I think cutting down on  
> unnecessary rails calls would be best.

Perhaps someone else will chime in with an alternative, but I think  
fighting this convention will be more trouble than its worth 🙂

–  
Hassan S. ------------------------ removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 4:37pm UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/4 "2009-03-06T16:37:57Z")

</div>

Hassan S. wrote:

> On Thu, Mar 5, 2009 at 7:20 PM, Tony T.  
> [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > I’m trying to get map.root to point to a static html file in the public  
> > directory. I can’t just have index.html since I’m doing subdomains and  
> > any index.html file in there will be used as the actual page displayed.
> 
> Sorry, missing something here –
> 
> What’s the difference between using static file “index.html” and static  
> file “homepage.html”?
> 
> –  
> Hassan S. ------------------------ removed\_email\_address@domain.invalid

Hi Hassan,

Rails automatically picks up ‘index.html’ as the root page for the site.  
Whether it’s a subdomain (ex. [user.app.com](http://user.app.com)) or the actual domain  
([app.com](http://app.com)), if the ‘index.html’ is present then it is picked up as the  
root.

What I want is to have my subdomain root (ex. [user.app.com](http://user.app.com)) to point to  
the user login page (which I currently have working) and the domain root  
(ex. [app.com](http://app.com)) to have a typical welcome/signup index page. This index  
page is going to be 100% static so I’d prefer to just have it as a file  
(say homepage.html) in the public directory. I realize I could get this  
working by creating a ‘page’ controller and view and then direct  
map.root to that specific controller/view but I think cutting down on  
unnecessary rails calls would be best.

Any help is appreciated, thanks!

-Tony

---

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 6:26pm UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/5 "2009-03-06T18:26:14Z")

</div>

Hassan S. wrote:

> On Fri, Mar 6, 2009 at 7:37 AM, Tony T.  
> [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > What I want is to have my subdomain root (ex. [user.app.com](http://user.app.com)) to point to  
> > the user login page (which I currently have working) and the domain root  
> > (ex. [app.com](http://app.com)) to have a typical welcome/signup index page. This index  
> > page is going to be 100% static so I’d prefer to just have it as a file  
> > (say homepage.html) in the public directory. ï¿½I realize I could get this  
> > working by creating a ‘page’ controller and view and then direct  
> > map.root to that specific controller/view but I think cutting down on  
> > unnecessary rails calls would be best.
> 
> Perhaps someone else will chime in with an alternative, but I think  
> fighting this convention will be more trouble than its worth 🙂
> 
> –  
> Hassan S. ------------------------ removed\_email\_address@domain.invalid

It’s starting to look that way! Hopefully there’s someone that knows of  
a good quick solution. Thanks for the reply though, I appreciate it.

-Tony

---

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 6:27pm UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/6 "2009-03-06T18:27:44Z")

</div>

On Fri, Mar 6, 2009 at 8:53 AM, Hassan S.  
\<removed\_email\_address@domain.invalid

> wrote:

> > map.root to that specific controller/view but I think cutting down on  
> > unnecessary rails calls would be best.
> 
> Perhaps someone else will chime in with an alternative, but I think  
> fighting this convention will be more trouble than its worth 🙂
> 
> –  
> Hassan S. ------------------------ removed\_email\_address@domain.invalid

Hi, when someone goes to [app.com](http://app.com), you would like it to go to the  
homepage.html. Thus, you can do one of the following:

a) Apache

```
 i) Update the following in your httpd.conf file:

     <IfModule dir_module>
         DirectoryIndex index.html index.htm index.php homepage.html
    </IfModule>

 ii) Upload the file (i.e. homepage.html) to public directory of 

```

your  
Rails application.

```
 Note: This should do the job for you.

```

b) Rails Caching

```
 i) Turn page caching on for a view template (i.e. 

```

homepage.html.erb)  
and

```
 ii) update you map.root

     map.root :controller => "index", :action => "homepage"

 Note: This will cache the static content (i.e. homepage.html) 

```

within  
your public folder. Thus, it will be served by  
Apache or the web server that you’re using.

In short, the standard way of providing the root page of a web site is  
to  
use an index.[php|html|htm|…] but feel free to use one  
of the methods above to achieve your result.

Good luck,

-Conrad

---

<div class="post-metadata">

**Author:** ![bagadoughnuts](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/71c47a/32.png) [@bagadoughnuts](https://www.ruby-forum.com/u/bagadoughnuts)\
**Post date:** [March 6, 2009, 6:42pm UTC](https://www.ruby-forum.com/t/can-map-root-to-point-to-a-static-html-file-in-public-dir/162135/7 "2009-03-06T18:42:19Z")

</div>

Conrad T. wrote:

> In short, the standard way of providing the root page of a web site is  
> to  
> use an index.[php|html|htm|…] but feel free to use one  
> of the methods above to achieve your result.
> 
> Good luck,
> 
> -Conrad

FANTASTIC! Thanks a lot for the detailed post.

-Tony
