PHP:一个读取所有传入HTTP请求的类


PHP: a class which reads all incoming HTTP request

我正在尝试在浏览器请求的任何文件中读取。像所有的CSS,JS等。

我用JSP做了类似的事情,但是我如何用PHP做呢?

您将使用apache将所有请求重定向到php文件,将实际请求的文件作为url参数传递,记录请求,然后提供该文件

. htaccess

RewriteCond %{REQUEST_FILENAME} '.(js|css)$
RewriteRule ^(.*)$ request.php?request=$1 [L,QSA]

其中request.php是记录请求的php文件,js|css|分隔的扩展列表,您想要重定向。

然后用php:

提供文件
header("Content-type: text/javascript");

header("Content-type: text/css");

紧随其后
echo file_get_contents($_GET['request']);

同样重要的是,不要忘记验证请求的文件。

注意可能有额外的有用或必需的头,如content-length, cache-control和pragma。你需要评估你的确切需求,并相应地与之合作。

header("Cache-Control: no-cache");
header("Pragma: no-cache");
header("Content-Length: ".filesize($_GET['request']));