Bug #71114

International character in domain records

Added by Morten Haggren about 4 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Miscellaneous
Target version:
-
Start date:
2015-10-29
Due date:
% Done:

0%

TYPO3 Version:
6.2
PHP Version:
5.5
Tags:
Complexity:
Is Regression:
No
Sprint Focus:

Description

There is a regression in domain record handling where records with international characters are silently converted into pure ascii ( eg. å -> aa )

This causes havok when upgrading a older installation say 4.5 LTS to 6.2 LTS;

The 4.5 version might have 3 domain records like;

paa.dk
på.dk -> paa.dk
xn--p-2fa.dk -> paa.dk

This works perfectly fine in 4.5, in 6.2 how ever it will result in a infinite redirect from paa.dk to paa.dk.

we only discovered the cause of this bug because we editied the top record ( paa.dk ) and it suddenly had a 0 at the end, which is what happens when you have duplicate records - only inspecting the database revealed this to not be the case.

Since paa.dk & på.dk are seperate domains this has to be concidered a bug ( på.dk & xn--p-2fa.dk are the same url in theory but some servers treat them differently ). It's easy to immagine wanting to use the international character url for localized content and the other for international, this is not currently possible.

History

#1 Updated by Helmut Hummel about 4 years ago

  • Is Regression changed from Yes to No

It would be a regression, if it worked in 6.2 at some point and stopped working.

This is a bug and we need to find out which change caused it (I assume the domain record cache).

#2 Updated by Morten Haggren about 4 years ago

Helmut Hummel wrote:

It would be a regression, if it worked in 6.2 at some point and stopped working.

This is a bug and we need to find out which change caused it (I assume the domain record cache).

Mea culpa - I just assumed that the fact that it worked in previous versions (4.5) and no longer does qualified as a regression.

#3 Updated by Patrick Schriner about 4 years ago

https://forge.typo3.org/projects/typo3cms-core/repository/revisions/9e55c5294cc9b76ac6e0e14ef036a3f5fe3672b6

This was changed a long time ago (4.6), and is even documented (TCA columns eval:domainName)

As a workaround you could set the TCA for sys_domain|domainName to only eval "required,unique,lower,trim"

#4 Updated by Morten Haggren about 4 years ago

Patrick Schriner wrote:

https://forge.typo3.org/projects/typo3cms-core/repository/revisions/9e55c5294cc9b76ac6e0e14ef036a3f5fe3672b6

This was changed a long time ago (4.6), and is even documented (TCA columns eval:domainName)

As a workaround you could set the TCA for sys_domain|domainName to only eval "required,unique,lower,trim"

The issue is that it does not turn "på.dk" into punycode ( "xn--p-2fa.dk" ) but rather into "paa.dk" which is not the same domain ( "på.dk" and "paa.dk" could be owned by two different people )

If it did in fact save "på.dk" as punycode there wouldn't be an issue.

I'll admit I've not tested it but I assume the same issue is true for æ->ae, ø->oe, ß->ss and so on.

#5 Updated by Georg Ringer over 3 years ago

  • Status changed from New to Needs Feedback

can you please test latest master? testing your example changes the domain to "xn--p-2fa.dk" so it looks fine for me already

#6 Updated by Morten Haggren over 3 years ago

Georg Ringer wrote:

can you please test latest master? testing your example changes the domain to "xn--p-2fa.dk" so it looks fine for me already

Tested it with 7.6.9 - records will be changed into punycode if re-saved, and does not appear to conflict untill then

#7 Updated by Wouter Wolters over 3 years ago

  • Status changed from Needs Feedback to Closed

Solved.

Also available in: Atom PDF