我有一个需要直接调用的php文件。它呈现PDF内容并通过application / pdf标头输出,因此用户不会离开他们调用的页面。
这个php文件位于我的php库文件夹结构的深处。我目前正在链接到php文件,如下所示:
<a href="myserver.com/path/to/actual/phpFile/downloadPDF.pdf?arg1=blah&arg2">
我宁愿我的用户不知道目录名和php文件等细节。混淆安全,对吧?
创建重定向以实现我正在寻找的重定向的最佳方法是什么?
答案 0 :(得分:3)
更简单的解决方案是查找或创建.htaccess
文件,然后将其放在htdocs
目录中。
在其中添加以下代码行:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)yournewaddress$ /path/to/actual/phpFile/downloadPDF.pdf?arg1=blah&arg2
然后你可以用
来调用你的pdf文件<a href="myserver.com/yournewaddress">
答案 1 :(得分:1)
如果使用Apache,您可以尝试使用此重写规则来生成一个漂亮的,人类可读的URL
# in server-config
RewriteRule ^/download/pdf/(.+) /path/to/actual/phpFile/downloadPDF.php?args=$1 [L,QSA]
(如果使用.htaccess
,则省略前导斜杠)
然后您可以使用
之类的网址<a href="/download/pdf/blah">
pdf/
之后的所有内容都会放入$_GET['args']
变量中,您可以根据需要使用该变量。对于多个args,我建议用斜杠分隔它们,例如
/download/pdf/foo/bar
...并在downloadPDF.php
$args = isset($_GET['args']) ? explode('/', $_GET['args']) : array();
答案 2 :(得分:0)
把
<?php
include "path/to/actual/phpFile.php";
?>
进入webroot中的downloadPDF.pdf并链接到该文件。