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 |