TYPO3 CMS  TYPO3_6-2
TYPO3\CMS\Core\Utility\HttpUtility Class Reference
Inheritance diagram for TYPO3\CMS\Core\Utility\HttpUtility:
t3lib_utility_Http

Static Public Member Functions

static redirect ($url, $httpStatus=self::HTTP_STATUS_303)
 
static setResponseCode ($httpStatus=self::HTTP_STATUS_303)
 
static setResponseCodeAndExit ($httpStatus=self::HTTP_STATUS_303)
 
static buildUrl (array $urlParts)
 

Public Attributes

const HTTP_STATUS_100 = 'HTTP/1.1 100 Continue'
 
const HTTP_STATUS_101 = 'HTTP/1.1 101 Switching Protocols'
 
const HTTP_STATUS_200 = 'HTTP/1.1 200 OK'
 
const HTTP_STATUS_201 = 'HTTP/1.1 201 Created'
 
const HTTP_STATUS_202 = 'HTTP/1.1 202 Accepted'
 
const HTTP_STATUS_203 = 'HTTP/1.1 203 Non-Authoritative Information'
 
const HTTP_STATUS_204 = 'HTTP/1.1 204 No Content'
 
const HTTP_STATUS_205 = 'HTTP/1.1 205 Reset Content'
 
const HTTP_STATUS_206 = 'HTTP/1.1 206 Partial Content'
 
const HTTP_STATUS_300 = 'HTTP/1.1 300 Multiple Choices'
 
const HTTP_STATUS_301 = 'HTTP/1.1 301 Moved Permanently'
 
const HTTP_STATUS_302 = 'HTTP/1.1 302 Found'
 
const HTTP_STATUS_303 = 'HTTP/1.1 303 See Other'
 
const HTTP_STATUS_304 = 'HTTP/1.1 304 Not Modified'
 
const HTTP_STATUS_305 = 'HTTP/1.1 305 Use Proxy'
 
const HTTP_STATUS_307 = 'HTTP/1.1 307 Temporary Redirect'
 
const HTTP_STATUS_400 = 'HTTP/1.1 400 Bad Request'
 
const HTTP_STATUS_401 = 'HTTP/1.1 401 Unauthorized'
 
const HTTP_STATUS_402 = 'HTTP/1.1 402 Payment Required'
 
const HTTP_STATUS_403 = 'HTTP/1.1 403 Forbidden'
 
const HTTP_STATUS_404 = 'HTTP/1.1 404 Not Found'
 
const HTTP_STATUS_405 = 'HTTP/1.1 405 Method Not Allowed'
 
const HTTP_STATUS_406 = 'HTTP/1.1 406 Not Acceptable'
 
const HTTP_STATUS_407 = 'HTTP/1.1 407 Proxy Authentication Required'
 
const HTTP_STATUS_408 = 'HTTP/1.1 408 Request Timeout'
 
const HTTP_STATUS_409 = 'HTTP/1.1 409 Conflict'
 
const HTTP_STATUS_410 = 'HTTP/1.1 410 Gone'
 
const HTTP_STATUS_411 = 'HTTP/1.1 411 Length Required'
 
const HTTP_STATUS_412 = 'HTTP/1.1 412 Precondition Failed'
 
const HTTP_STATUS_413 = 'HTTP/1.1 413 Request Entity Too Large'
 
const HTTP_STATUS_414 = 'HTTP/1.1 414 Request-URI Too Long'
 
const HTTP_STATUS_415 = 'HTTP/1.1 415 Unsupported Media Type'
 
const HTTP_STATUS_416 = 'HTTP/1.1 416 Requested Range Not Satisfiable'
 
const HTTP_STATUS_417 = 'HTTP/1.1 417 Expectation Failed'
 
const HTTP_STATUS_500 = 'HTTP/1.1 500 Internal Server Error'
 
const HTTP_STATUS_501 = 'HTTP/1.1 501 Not Implemented'
 
const HTTP_STATUS_502 = 'HTTP/1.1 502 Bad Gateway'
 
const HTTP_STATUS_503 = 'HTTP/1.1 503 Service Unavailable'
 
const HTTP_STATUS_504 = 'HTTP/1.1 504 Gateway Timeout'
 
const HTTP_STATUS_505 = 'HTTP/1.1 505 Version Not Supported'
 
const SCHEME_HTTP = 1
 
const SCHEME_HTTPS = 2
 

Detailed Description

This file is part of the TYPO3 CMS project.

It is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, either version 2 of the License, or any later version.

For the full copyright and license information, please read the LICENSE.txt file that was distributed with this source code.

The TYPO3 project - inspiring people to share! HTTP Utility class

Author
Ingo Renner ingo@.nosp@m.typo.nosp@m.3.org

Definition at line 21 of file HttpUtility.php.

Member Function Documentation

◆ buildUrl()

static TYPO3\CMS\Core\Utility\HttpUtility::buildUrl ( array  $urlParts)
static

Builds a URL string from an array with the URL parts, as e.g. output by parse_url().

Parameters
array$urlParts
Returns
string
See also
http://www.php.net/parse_url

Definition at line 110 of file HttpUtility.php.

Referenced by TYPO3\CMS\Core\Tests\Unit\Utility\HttpUtilityTest\isUrlBuiltCorrectly(), and TYPO3\CMS\Core\Utility\GeneralUtility\isValidUrl().

◆ redirect()

static TYPO3\CMS\Core\Utility\HttpUtility::redirect (   $url,
  $httpStatus = self::HTTP_STATUS_303 
)
static

Sends a redirect header response and exits. Additionally the URL is checked and if needed corrected to match the format required for a Location redirect header. By default the HTTP status code sent is a 'HTTP/1.1 303 See Other'.

Parameters
string$urlThe target URL to redirect to
string$httpStatusAn optional HTTP status header. Default is 'HTTP/1.1 303 See Other'

Definition at line 76 of file HttpUtility.php.

References die, and TYPO3\CMS\Core\Utility\GeneralUtility\locationHeaderUrl().

Referenced by TYPO3\CMS\Core\Authentication\BackendUserAuthentication\backendCheckLogin(), TYPO3\CMS\Core\Authentication\AbstractUserAuthentication\checkAuthentication(), TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController\checkPageForShortcutRedirect(), TYPO3\CMS\Backend\Controller\EditDocumentController\closeDocument(), TYPO3\CMS\SysAction\ActionTask\deleteUser(), TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController\fetch_the_id(), TYPO3\CMS\Backend\Controller\File\FileController\finish(), TYPO3\CMS\Backend\Controller\SimpleDataHandlerController\finish(), TYPO3\CMS\Frontend\Page\PageRepository\getDomainStartPage(), TYPO3\CMS\Backend\Controller\Wizard\AddController\init(), TYPO3\CMS\Backend\Controller\LoginController\init(), TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController\jumpUrl(), TYPO3\CMS\Backend\Controller\EditDocumentController\localizationRedirect(), TYPO3\CMS\Backend\Controller\LogoutController\logout(), TYPO3\CMS\Openid\OpenidReturn\main(), TYPO3\CMS\Openid\OpenidEid\main(), TYPO3\CMS\Backend\Controller\Wizard\EditController\main(), TYPO3\CMS\Backend\Controller\Wizard\ListController\main(), TYPO3\CMS\Felogin\Controller\FrontendLoginController\main(), TYPO3\CMS\Backend\History\RecordHistory\main(), TYPO3\CMS\Backend\Controller\Wizard\AddController\main(), TYPO3\CMS\Backend\Controller\PageLayoutController\main(), TYPO3\CMS\Backend\Controller\LoginController\makeLogoutForm(), TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController\pageErrorHandler(), TYPO3\CMS\Tstemplate\Controller\TypoScriptTemplateInformationModuleFunctionController\processTemplateRowBeforeSaving(), TYPO3\CMS\Install\Controller\BackendModuleController\redirect(), TYPO3\CMS\Install\Controller\AbstractController\redirect(), TYPO3\CMS\Core\Core\Bootstrap\redirectToInstallerIfEssentialConfigurationDoesNotExist(), TYPO3\CMS\Install\Controller\ToolController\registerExtensionConfigurationErrorHandler(), TYPO3\CMS\Form\PostProcess\RedirectPostProcessor\render(), TYPO3\CMS\Openid\OpenidService\sendOpenIDRequest(), TYPO3\CMS\Backend\Controller\EditDocumentController\setDocument(), TYPO3\CMS\Recordlist\RecordList\AbstractDatabaseRecordList\start(), TYPO3\CMS\Beuser\Hook\SwitchBackUserHook\switchBack(), TYPO3\CMS\Beuser\Controller\BackendUserController\switchUser(), and TYPO3\CMS\SysAction\ActionTask\viewNewRecord().

◆ setResponseCode()

static TYPO3\CMS\Core\Utility\HttpUtility::setResponseCode (   $httpStatus = self::HTTP_STATUS_303)
static

Set a specific response code like 404.

Parameters
string$httpStatusOne of the HTTP_STATUS_* class class constants, default to self::HTTP_STATUS_303
Returns
void

Definition at line 88 of file HttpUtility.php.

◆ setResponseCodeAndExit()

static TYPO3\CMS\Core\Utility\HttpUtility::setResponseCodeAndExit (   $httpStatus = self::HTTP_STATUS_303)
static

Set a specific response code and exit script execution.

Parameters
string$httpStatusOne of the HTTP_STATUS_* class class constants, default to self::HTTP_STATUS_303
Returns
void

Definition at line 98 of file HttpUtility.php.

References die.

Referenced by TYPO3\CMS\Frontend\Controller\ShowImageController\init(), and TYPO3\CMS\Frontend\Controller\ShowImageController\printContent().

Member Data Documentation

◆ HTTP_STATUS_100

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_100 = 'HTTP/1.1 100 Continue'

Definition at line 24 of file HttpUtility.php.

◆ HTTP_STATUS_101

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_101 = 'HTTP/1.1 101 Switching Protocols'

Definition at line 25 of file HttpUtility.php.

◆ HTTP_STATUS_200

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_200 = 'HTTP/1.1 200 OK'

◆ HTTP_STATUS_201

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_201 = 'HTTP/1.1 201 Created'

Definition at line 27 of file HttpUtility.php.

◆ HTTP_STATUS_202

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_202 = 'HTTP/1.1 202 Accepted'

Definition at line 28 of file HttpUtility.php.

◆ HTTP_STATUS_203

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_203 = 'HTTP/1.1 203 Non-Authoritative Information'

Definition at line 29 of file HttpUtility.php.

◆ HTTP_STATUS_204

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_204 = 'HTTP/1.1 204 No Content'

Definition at line 30 of file HttpUtility.php.

◆ HTTP_STATUS_205

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_205 = 'HTTP/1.1 205 Reset Content'

Definition at line 31 of file HttpUtility.php.

◆ HTTP_STATUS_206

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_206 = 'HTTP/1.1 206 Partial Content'

Definition at line 32 of file HttpUtility.php.

◆ HTTP_STATUS_300

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_300 = 'HTTP/1.1 300 Multiple Choices'

Definition at line 33 of file HttpUtility.php.

◆ HTTP_STATUS_301

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_301 = 'HTTP/1.1 301 Moved Permanently'

◆ HTTP_STATUS_302

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_302 = 'HTTP/1.1 302 Found'

◆ HTTP_STATUS_303

◆ HTTP_STATUS_304

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_304 = 'HTTP/1.1 304 Not Modified'

Definition at line 37 of file HttpUtility.php.

◆ HTTP_STATUS_305

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_305 = 'HTTP/1.1 305 Use Proxy'

Definition at line 38 of file HttpUtility.php.

◆ HTTP_STATUS_307

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_307 = 'HTTP/1.1 307 Temporary Redirect'

◆ HTTP_STATUS_400

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_400 = 'HTTP/1.1 400 Bad Request'

Definition at line 40 of file HttpUtility.php.

◆ HTTP_STATUS_401

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_401 = 'HTTP/1.1 401 Unauthorized'

Definition at line 41 of file HttpUtility.php.

◆ HTTP_STATUS_402

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_402 = 'HTTP/1.1 402 Payment Required'

Definition at line 42 of file HttpUtility.php.

◆ HTTP_STATUS_403

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_403 = 'HTTP/1.1 403 Forbidden'

Definition at line 43 of file HttpUtility.php.

◆ HTTP_STATUS_404

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_404 = 'HTTP/1.1 404 Not Found'

◆ HTTP_STATUS_405

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_405 = 'HTTP/1.1 405 Method Not Allowed'

Definition at line 45 of file HttpUtility.php.

◆ HTTP_STATUS_406

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_406 = 'HTTP/1.1 406 Not Acceptable'

Definition at line 46 of file HttpUtility.php.

◆ HTTP_STATUS_407

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_407 = 'HTTP/1.1 407 Proxy Authentication Required'

Definition at line 47 of file HttpUtility.php.

◆ HTTP_STATUS_408

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_408 = 'HTTP/1.1 408 Request Timeout'

Definition at line 48 of file HttpUtility.php.

◆ HTTP_STATUS_409

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_409 = 'HTTP/1.1 409 Conflict'

Definition at line 49 of file HttpUtility.php.

◆ HTTP_STATUS_410

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_410 = 'HTTP/1.1 410 Gone'

◆ HTTP_STATUS_411

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_411 = 'HTTP/1.1 411 Length Required'

Definition at line 51 of file HttpUtility.php.

◆ HTTP_STATUS_412

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_412 = 'HTTP/1.1 412 Precondition Failed'

Definition at line 52 of file HttpUtility.php.

◆ HTTP_STATUS_413

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_413 = 'HTTP/1.1 413 Request Entity Too Large'

Definition at line 53 of file HttpUtility.php.

◆ HTTP_STATUS_414

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_414 = 'HTTP/1.1 414 Request-URI Too Long'

Definition at line 54 of file HttpUtility.php.

◆ HTTP_STATUS_415

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_415 = 'HTTP/1.1 415 Unsupported Media Type'

Definition at line 55 of file HttpUtility.php.

◆ HTTP_STATUS_416

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_416 = 'HTTP/1.1 416 Requested Range Not Satisfiable'

Definition at line 56 of file HttpUtility.php.

◆ HTTP_STATUS_417

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_417 = 'HTTP/1.1 417 Expectation Failed'

Definition at line 57 of file HttpUtility.php.

◆ HTTP_STATUS_500

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_500 = 'HTTP/1.1 500 Internal Server Error'

Definition at line 58 of file HttpUtility.php.

◆ HTTP_STATUS_501

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_501 = 'HTTP/1.1 501 Not Implemented'

Definition at line 59 of file HttpUtility.php.

◆ HTTP_STATUS_502

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_502 = 'HTTP/1.1 502 Bad Gateway'

Definition at line 60 of file HttpUtility.php.

◆ HTTP_STATUS_503

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_503 = 'HTTP/1.1 503 Service Unavailable'

Definition at line 61 of file HttpUtility.php.

◆ HTTP_STATUS_504

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_504 = 'HTTP/1.1 504 Gateway Timeout'

Definition at line 62 of file HttpUtility.php.

◆ HTTP_STATUS_505

const TYPO3\CMS\Core\Utility\HttpUtility::HTTP_STATUS_505 = 'HTTP/1.1 505 Version Not Supported'

Definition at line 63 of file HttpUtility.php.

◆ SCHEME_HTTP

const TYPO3\CMS\Core\Utility\HttpUtility::SCHEME_HTTP = 1

◆ SCHEME_HTTPS

const TYPO3\CMS\Core\Utility\HttpUtility::SCHEME_HTTPS = 2