I suppose one way to get around cross-domain would be to just store a list mapping views to sizes. A maintenance pain to be sure...
There isn't any mechanism to ask the inner iframe right now. I think it would be possible for us to build a way for newer browsers to do so, using the HTML5ish "postMessage" functionality... but it takes some nasty hacks to do that in older browsers.
In my previous comment, I meant to say:
* * *
So instead of it being at
* * *
Sorry, I had put it in brackets and it got edited out.
Also, one additional note... The reason I'm not able to handle this cleanly with a reverse proxy right now is because the Tableau server uses some absolute links.
So if I proxy
to the Tableau server, it will partially work, but all absolute links end up breaking. (Images, some css, etc.)
Argh. There was a second piece of text in brackets that got edited out of my comment.
I had meant to ask:
* * *
Alternatively, is there a way to set a BASE tag in the head of the Tableau server?
* * *
Uh, I believe you can add a directory to your "gateway.host" config variable. Don't quote me on that one, though, I can't remember whether that's supported or not.
And I thought we had customers running reverse proxies. At least I thought we had a policy of avoiding absolute links for that reason. (That is, absolute links that we generate whole, rather than simply modifying the protocol to/from https.) I wouldn't mind some specific examples of those images/css absolute links.
I said absolute links, but that's not true. Sorry to add confusion. (And sorry about slandering Tableau!)
What I mean is non-relative links, such as:
Since all those references have a "/" in front, the browser looks at the top of the domain.
So when I try to reverse proxy the site
All those above links end up looking at the top level of
And the reverse proxy fails to pick them up.
I'm definitely NOT an expert on proxy servers, so I admit I may be making foolish mistakes.
As to the first part of your comment, I tried adjusting the gateway.host (and the gateway.public.host) config setting, but it didn't seem to impact the url of the tableau server. It's possible I'm not using it correctly. If I wanted my server to be at https://mytabserver/tab1, what would the setting be?
Thanks so much for your help with this issue. I really appreciate it!
Once again, the html tags were edited out of my comment. Sorry.
Examples of non-relative links are:
<link href="/stylesheets/base_packaged.css" media="screen" rel="stylesheet" type="text/css">
<img align="left" alt="Tableau Server Home" border="0" id="logo" src="/images/server-logo.gif">
Oops. I went and did some more checking and we definitely don't support hosting server in a subdirectory URL. Ignore what I said about gateway.host for that purpose. Sorry - I understand that it's a common request, though.
You can proxy one hostname to another hostname, but not to a subdirectory. I'm not a proxy expert myself, but I feel like there should be some way to proxy-and-transform in the way you want.
Is there any way to "hack" the html code that is coming out of the Tableau server by altering files or something in the installation?
One solution would be if I could add a "base" html tag to every page's header that allows me to treat it like it's in a subdirectory even though it's not.