---
title: "Breaking: #70056 - Http-related options and HttpRequest class removed"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-70056"
source: "Changelog/8.1/Breaking-70056-CurlAndHttpRequestRemoved.rst"
typo3-version: "8.1"
typo3-major: 8
type: "breaking"
issue: 70056
forge: "https://forge.typo3.org/issues/70056"
tags: ["PHP-API", "LocalConfiguration"]
rendered: "2026-09-20T18:31:11+00:00"
---

# Breaking: #70056 - Http-related options and HttpRequest class removed {#breaking-70056}

See [forge#70056](https://forge.typo3.org/issues/70056)

## Description {#description}

The following PHP classes have been removed:

-   `\TYPO3\CMS\Core\Http\HttpRequest`
-   `\TYPO3\CMS\Core\Http\Observer\Download`

The following configuration options have been removed:

-   `$GLOBALS[TYPO3_CONF_VARS][SYS][curlUse]`
-   `$GLOBALS[TYPO3_CONF_VARS][SYS][curlProxyNTLM]`
-   `$GLOBALS[TYPO3_CONF_VARS][SYS][curlProxyServer]`
-   `$GLOBALS[TYPO3_CONF_VARS][SYS][curlProxyTunnel]`
-   `$GLOBALS[TYPO3_CONF_VARS][SYS][curlProxyUserPass]`
-   `$GLOBALS[TYPO3_CONF_VARS][SYS][curlTimeout]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][adapter]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][protocol_version]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][follow_redirects]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][max_redirects]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][strict_redirects]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_host]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_port]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_user]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_password]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_auth_scheme]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_verify_peer]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_verify_host]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_cafile]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_capath]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_local_cert]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_passphrase]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][userAgent]`

The following properties have been renamed:

-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][userAgent]` is now called `$GLOBALS[TYPO3_CONF_VARS][HTTP][headers][User-Agent]`
-   `$GLOBALS[TYPO3_CONF_VARS][HTTP][protocol_version]` is now called `$GLOBALS[TYPO3_CONF_VARS][HTTP][version]`
-   All proxy-related options are unified within `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy]`
-   All redirect-related options (HTTP/follow_redirects, HTTP/max_redirects, HTTP/strict_redirects) are unified within `$GLOBALS[TYPO3_CONF_VARS][HTTP][allow_redirects]`
-   All options related to SSL private keys (HTTP/ssl_local_cert, HTTP/ssl_passphrase) are merged into `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_key]`
-   All options related to verify SSL peers are merged into `$GLOBALS[TYPO3_CONF_VARS][HTTP][verify]`

Additionally, the dependency to the PEAR Package "Http_Request2" (composer package name `pear/http_request2`) has
been removed in favor of the PHP library Guzzle.

## Impact {#impact}

Calling the mentioned classes above will result in a fatal PHP error.

Using the options in custom PHP code will result in unexpected behavior as the options are non-existent and empty.

Using PHP code that depends on the removed PEAR library "Http_Request2" will result in unexpected behaviour and possibly a
fatal PHP error.

## Affected Installations {#affected-installations}

All 3rd party extensions calling the mentioned classes directly or using the configuration options directly, as well
as installations depending on the PEAR library "Http_Request2".

## Migration {#migration}

For PHP code previously using the `HttpRequest` and `Download` classes a new object-oriented PSR-7-based approach is
introduced, see the Guzzle Feature integration documentation for more details. A new PHP class
`TYPO3CMSCoreHttpRequestFactory` which generates PSR-7 compliant request objects helps in simplifying the
migration process.

All still necessary options will be migrated to new options within `$GLOBALS[TYPO3_CONF_VARS][HTTP]` when the install tool is run.

In special cases, the options `$GLOBALS[TYPO3_CONF_VARS][HTTP][ssl_verify_host]`, `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_auth_scheme]`
and `$GLOBALS[TYPO3_CONF_VARS][HTTP][proxy_host]` need to migrated manually to the newly available options.
