Configuration

You can find the standard configuration in EXT:linkvalidator/Configuration/page.tsconfig.

This may serve as an example on how to configure the extension for your needs.

Minimal configuration

It is recommended to at least fill out httpAgentUrl and httpAgentEmail. The latter is only required if $GLOBALS['TYPO3_CONF_VARS']['MAIL']['defaultMailFromAddress'] is not set.

mod.linkvalidator.linktypesConfig.external.httpAgentUrl =
mod.linkvalidator.linktypesConfig.external.httpAgentEmail =

Copied!

Reference

You can set the following options in the TSconfig for a page (for example the root page) and override them in user or groups TSconfig. You must prefix them with mod.linkvalidator, for example mod.linkvalidator.searchFields.pages = canonical_link.

searchFields.[key]

Property
searchFields.[key]
Data type
string
Description

Comma separated list of table fields in which to check for broken links. LinkValidator only checks fields that have been defined in searchFields.

LinkValidator ships with sensible defaults that work well for the TYPO3 core, but additional third party extensions are not considered.

Example
# Only check for "bodytext" in "tt_content":
tt_content = bodytext
Copied!
Default
pages = media,url
tt_content = bodytext,header_link,records
Copied!

linktypes

Property
linktypes
Data type
string
Description

Comma separated list of link types to check.

Possible values:

db: Check links to database records.

file: Check links to files located in your local TYPO3 installation.

external: Check links to external URLs.

This list may be extended by other extensions providing a custom linktype implementation.

Changed in version 13.0

The default was changed to exclude "external" link type.

Default
db,file

linktypesConfig.external.httpAgentName

Property
linktypesConfig.external.httpAgentName
Data type
string
Description
Add descriptive name to be used as 'User-Agent' header when crawling external URLs.
Default
TYPO3 LinkValidator

linktypesConfig.external.httpAgentUrl

Property
linktypesConfig.external.httpAgentUrl
Data type
string
Description
Add URL to be used in 'User-Agent' header when crawling external URLs.
Default
(empty string)

linktypesConfig.external.httpAgentEmail

Property
linktypesConfig.external.httpAgentEmail
Data type
string
Description
Add descriptive email used in 'User-Agent' header when crawling external URLs.
Default
$GLOBALS['TYPO3_CONF_VARS']['MAIL']['defaultMailFromAddress']

checkhidden

Property
checkhidden
Data type
boolean
Description
If set, disabled pages and content elements are checked for broken links, too.
Default
0

showCheckLinkTab

Property
showCheckLinkTab
Data type
boolean
Description

If set, the backend module shows a "Check Links" tab, which you can use to perform the checks on demand.

The Check links tab is visible

The Check links tab is visible

Default
1

actionAfterEditRecord

Property
actionAfterEditRecord
Data type
string
Default
recheck
Possible values
recheck | setNeedsRecheck
Description

After a record is edited, the list of broken links may no longer be correct, because broken links were changed or removed or new broken links added. Due to this, the list of broken links should be updated.

Possible values are:

  • recheck: The field is rechecked. (Warning: an RTE field may contain a number of links, rechecking may lead to delays.)
  • setNeedsRecheck: The entries in the list are marked as needing a recheck

mail.fromname

Property
mail.fromname
Data type
string
Description
Set the from name of the report mail sent by the cron script.
Default

Install Tool

defaultMailFromName

mail.fromemail

Property
mail.fromemail
Data type
string
Description
Set the from email of the report mail sent by the cron script.
Default

Install Tool

defaultMailFromAddress

mail.replytoname

Property
mail.replytoname
Data type
string
Description
Set the replyto name of the report mail sent by the cron script.

mail.replytoemail

Property
mail.replytoemail
Data type
string
Description
Set the replyto email of the report mail sent by the cron script.

mail.subject

Property
mail.subject
Data type
string
Description
Set the subject of the report mail sent by the cron script.
Default
TYPO3 LinkValidator report

linktypesConfig.external.headers

Property
linktypesConfig.external.headers
Data type
array
Description
Additional set of HTTP headers to be passed when crawling URLs.
Default
(empty array)

linktypesConfig.external.method

Property
linktypesConfig.external.headers
Data type
array
Description

This specified which method is used for crawling URLs. By default, we use HEAD (which falls back to GET if HEAD fails).

You can use GET as an alternative, but keep in mind that HEAD is a lightweight request and should be preferred while GET will fetch the remote web page (within the limits specified by range, see next option).

"The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response." (w3 RFC2616).

Default
HEAD

linktypesConfig.external.range

Property
linktypesConfig.external.headers
Data type
string
Description
Additional HTTP request header 'Range' to be passed when crawling URLs. Use a string to specify the range (in bytes).
Default
0-4048

linktypesConfig.external.timeout

Property
linktypesConfig.external.timeout
Data type
integer
Description

HTTP request option. This is the total timeout of the request in seconds.

If set, this overrides the timeout in $GLOBALS['TYPO3_CONF_VARS']['HTTP']['timeout'] which defaults to 0.

Default
20

Example

mod.linkvalidator {
        searchFields {
                pages = url,canonical_link
                tt_content = bodytext,header_link,records
        }
        linktypes = db,file,external
        checkhidden = 0
        mail {
                fromname = TYPO3 LinkValidator
                fromemail = no_reply@mydomain.com
                replytoname =
                replytoemail =
                subject = TYPO3 LinkValidator report
        }
        external {
                httpAgentUrl = https://example.com/info.html
                httpAgentEmail = info@example.com
        }
}
Copied!