apache:在静态文件的 HTTP 标头中发送请求 URI

apache:在静态文件的 HTTP 标头中发送请求 URI

为了满足PubSubHubbub 0.4 规格,我必须rel=self为每个文件发送一个标题。

我现在正尝试这样做阿帕奇的mod_headers和环境变量:

Header append Link '<http://example.org%{REQUEST_URI}e>; rel="self"'

*.htm只要文件由 PHP 处理,这种方法就可以奏效,但对于未经mod_php或任何 CGI 进程处理的静态文件(如)则无效。

确实有似乎不是一个办法获取所有当前 Apache 环境变量的列表,所以我无法检查哪些变量实际上是可用的。

所以我的问题是:如何访问当前请求的 URL 的相对路径Header append指示?


发生在使用 Apache 的 Debian 7 上2.2.22-13+deb7u4

答案1

尼克·丘Apache 邮件列表给我一个答案

REQUEST_URI是 CGI 环境变量。如果文件未使用 CGI,则出于性能原因,这些变量不可用。

答案2

您应该能够使用许多可用于指令的服务器变量,例如 RewriteCond (http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritecond

启用 mod_rewrite 并添加“RewriteEngine on”;这应该会导致变量被填充。

如果这还不足以填充您所需的服务器变量,那么您还应该发布 httpd 配置和操作系统详细信息(例如,许多供应商版本的 httpd 2.2,例如 Red Hat,都有很多反向端口)。

相关内容