Aide:Titre non valide
Appearance
| Note : si vous modifiez cette page, vous acceptez de placer votre contribution sous licence CC0. Plus d’informations sont disponibles sur le projet Aide dans le domaine public. |
Certains titres de pages sont si mauvais pour diverses raisons. Vous ne pouvez pas créer de pages avec ces titres.
Pour savoir ce qu'est un mauvais titre, voir Manuel:Titre de page, la section des expressions régulières, ou Title.php.
A titre de référence, voici un exemple de titre horrible mais valide :
- Some¬`!"£$^&*()_+-=~?/.,;:'@
Eléments que vous ne pouvez pas utiliser dans les titres :
- Les caractères suivants du standard CGI sont mauvais :
- https://www.mediawiki.org/wiki/Some%s — Très mauvais !
- Les syntaxes wiki suivantes semblent fonctionner :
- https://www.mediawiki.org/wiki/Some%sSome[s — sera coupé
- https://www.mediawiki.org/wiki/Some%sSome]s — sera coupé
- https://www.mediawiki.org/wiki/Some%sSome{s — mauvais
- https://www.mediawiki.org/wiki/Some%sSome}s — mauvais
- d'autres ne fonctionnent pas :
- https://www.mediawiki.org/wiki/Some%sSome#s — sera coupé
- et certaines structures simili-HTML sont très mauvaises, et ne peuvent être affichées ici sans risquer de casser la mise en page actuelle :
- https://www.mediawiki.org/wiki/Some%sSome<s — mauvais
- https://www.mediawiki.org/wiki/Some%sSome>s — mauvais
Codes HTTP
Ceci dépend du numéro de version du logiciel :
- 400 (Bad Request) pour v1.19.1 et plus récent
- 200 (OK) pour v1.16.4 et plus ancien
Expressions régulières
Expressions régulières PCRE2 relativement simples pour de nombreux caractères et séquences non valides dans les titres. Notez que cela ne détecte pas tout ce qui pourrait être faux avec les titres.
# Les titres correspondants seront considérés comme illégaux.
$rxTc = '/' .
# Tout caractère non autorisé est interdit.
'[^ %!"$&\'()*,\-.\/0-9:;=?@A-Z\\\\^_`a-z~\x80-\x{10FFFF}+]' .
# Caractère espace non ASCII, caractères Unicode bidi redéfinis, caractères de remplacement et non caractères.
'|[\xA0\x{1680}\x{180E}\x{2000}-\x{200A}\x{200E}\x{200F}\x{2028}-\x{202F}\x{205F}\x{3000}\x{FFFD}\p{Noncharacter Code Point}]' .
# Caractère espace initial ou virgule ou titre vide.
'|\A(?:[ :]|\Z)' .
# Espace double ou de fin.
'| (?: |\Z)' .
# Les URLs qui comportent des séquences encodées avec des caractères pourcent interfèrent avec la capacité d'aller-retour des titres, vous ne pouvez pas établir de liens dessus de manière cohérente.
'|%[0-9A-Fa-f]{2}' .
# Les références aux caractères XML/HTML produisent des problèmes similaires.
'|&[A-Za-z0-9\x80-\x{10FFFF}]+;' .
# Les pages avec ''/./'' ou ''/../'' apparaissant dans les URL seront souvent inaccessibles en raison de la façon dont les navigateurs web traitent les URL relatives. Elles sont en conflit avec la syntaxe des sous-pages. Interdisez-les explicitement.
'|(?:\A|\/)\.\.?(?:\/|\Z)' .
# Séquences magiques de tilde.
'|~{3}' .
'/u';