You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Nick Tkach <nt...@gmail.com> on 2012/06/21 21:21:56 UTC

[users@httpd] Setting Headers on a Redirect Scenario

Ok, I'm pretty sure I know the answer to this, but wanted to run it by
people more experienced.  I have an unusual request from some business
users.  They want to be able to request a pdf document from one site
(which we do control) when in a web page on a *different* site (which
we do control) *and* have it give that dialog where it prompts the
user to save it.  This is the general idea:

1 User hits http://foo.com/sec1/blah/mydoc1.pdf
2 Apache for foo.com "pulls" that pdf as a request to
http://bar.com/blah/otherstuff/mydoc1.pdf
3 Apache for foo.com the offers up the pdf via the original page via
the "save" dialog

The first, naive idea was to have something like this in the virtual
host on foo.com:

RewriteRule ^/sec1/(*.pdf) http://bar.com/blah/otherstuff/mydoc1.pdf

<FilesMatch "/sec1/*.pdf">
  Header always set Content-Disposition attachment
</FilesMatch


But that's not going to work, right?  Since Apache's going to see that
request, redirect it to the other site, and then the *other* site is
the thing serving up that request, so there's no way the first one can
modify it, right?

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: [users@httpd] Setting Headers on a Redirect Scenario

Posted by Daniel Ruggeri <DR...@primary.net>.
On 6/21/2012 2:21 PM, Nick Tkach wrote:
> Ok, I'm pretty sure I know the answer to this, but wanted to run it by
> people more experienced.  I have an unusual request from some business
> users.  They want to be able to request a pdf document from one site
> (which we do control) when in a web page on a *different* site (which
> we do control) *and* have it give that dialog where it prompts the
> user to save it.  This is the general idea:
>
> 1 User hits http://foo.com/sec1/blah/mydoc1.pdf
> 2 Apache for foo.com "pulls" that pdf as a request to
> http://bar.com/blah/otherstuff/mydoc1.pdf
> 3 Apache for foo.com the offers up the pdf via the original page via
> the "save" dialog
>
> The first, naive idea was to have something like this in the virtual
> host on foo.com:
>
> RewriteRule ^/sec1/(*.pdf) http://bar.com/blah/otherstuff/mydoc1.pdf
>
> <FilesMatch "/sec1/*.pdf">
>   Header always set Content-Disposition attachment
> </FilesMatch
>
>
> But that's not going to work, right?  Since Apache's going to see that
> request, redirect it to the other site, and then the *other* site is
> the thing serving up that request, so there's no way the first one can
> modify it, right?

Do you control foo.com or bar.com or both? If you only control foo, you
can not set the header. If this is a tight requirement you can't get out
of, your initial idea is close - just add the [P] flag (and load
mod_proxy). However, this will turn foo.com into a proxy to bar.com
which brings its own challenges. If you go this route you will want to
tighten up the RewriteRule pattern a bit more as well as change the
FileMatch to LocationMatch.

-- 
Daniel Ruggeri


Re: [users@httpd] Setting Headers on a Redirect Scenario

Posted by Nick Tkach <nt...@gmail.com>.
On Thu, Jun 21, 2012 at 3:51 PM, Nick Kew <ni...@webthing.com> wrote:
>
> On 21 Jun 2012, at 20:21, Nick Tkach wrote:
>
> [chop]
>
> You're overcomplicating it.  The server that serves the PDF sets its headers.
> The one you're redirecting from is irrelevant.
>
> (and it would be better to link to the PDF than to redirect).
>
> --
> Nick Kew
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org
>


Ah, good point!  Okay, that makes sense, thanks!  :)

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: [users@httpd] Setting Headers on a Redirect Scenario

Posted by Nick Kew <ni...@webthing.com>.
On 21 Jun 2012, at 20:21, Nick Tkach wrote:

[chop]

You're overcomplicating it.  The server that serves the PDF sets its headers.
The one you're redirecting from is irrelevant.

(and it would be better to link to the PDF than to redirect).

-- 
Nick Kew


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org