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

Reply via email to