如何使用typoscript发送HTTP状态代码?

时间:2011-10-26 15:39:31

标签: http-headers http-status-codes typo3 typoscript

当某些条件满足时,我想向用户发送“403 Forbidden”HTTP状态代码,但我在typoscript中找不到任何修改HTTP标头的可能性。我错过了什么,或者用typoscript这真的不可能吗?

我正在使用Typo3 4.5.6。

1 个答案:

答案 0 :(得分:6)

可以使用typoscript发送HTTP标头。在你的情况下,这将是:

config.additionalHeaders = HTTP/1.0 403 Forbidden

唯一的问题是需要停止执行任何后续代码,但是typoscript不提供exit()函数或类似功能。所以最简单的方法是使用USER_INT函数:

page = PAGE

//condition
[browser = msie]
  //send HTTP 403 and exit
  includeLibs.user_httpheaders = fileadmin/templates/php/user_httpheaders.php
  page.1 = USER_INT
  page.1.userFunc = user_httpheaders->user_main
[global]

而文件user_httpheaders.php包含:

<?php

    class user_httpheaders {

        public function user_main() {
            header('HTTP/1.0 403 Forbidden');
            exit;
        }

    }

?>