PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HTML Codierung für Whitespaces - Unterschied "=20" / "&# 160"



Doh!
02-12-2003, 13:37
ANMERKUNG habe "&# 160" maskieren müssen, sonst zeigt er ein " " an

Eine Frage zu einem mir noch völlig unerschlossenen Gebiet, erklärt's mir daher für Dumme:

Sachverhalt:
--------------
Habe einen Mailrelayer auf Postfixbasis, der über die header_checks, mime_header_checks und die body_checks auf regularExp Basis ein- und ausgehende Mails auf bestimmte Ausdrücke überprüft und gegebenenfalls bei einem match rejected. Da ich ein fauler Zeitgenosse bin, nehme ich dafür immer die von SecuritySage vorgefertigten "checks"-Dateien:
http://www.securitysage.com/files/header_checks
http://www.securitysage.com/files/mime_header_checks
http://www.securitysage.com/files/body_checks

Betrachtet man sich nun mal in der body_checks (jaja, nur zu einfach mal den Link klicken ;) ) die Zeilen (relativ weit oben - Zeilenumbruch vor dem Reject von mir eingefügt):


# This will reject any line that uses more then seven "=20" to replace whitespace.
/^.*=20[^>]*=20[^>]*=20[^>]*=20[^>]*=20[^>]*=20[^>]*=20[^>]*/ \
REJECT Your email program uses "=20" instead of spaces. \
Please correct this (try setting your mail program to use plain text) and resend your message.


Mit dieser Zeile sollen also HTML-Mails mit Leerzeichen, die statt mit "&#160" codiert sind, mit "=20" codiert werden, rausgefiltert werden, sofern sich mehr als sieben "=20" in einer Zeile einer HTML-Mail befinden.

Mir wurde nämlich deswegen die Registrierungsmail von ebay geblockt, weil eine Zeile der Mail so lautete (die alte Regel filterte schon bei 4 "=20", deswegen wurde die Zeile als match erkannt):
---
=0D=0A<html>=0D=0A<head>=0D=0A<!--=20=20=20extraneous=20meta=20tag=20r=
---


Frage
-------
Was genau hat es nun auf sich mit dem "=20" bzw. dem anscheinend korrektem "&# 160;" bzw. "&nbsp;"? Wann werden Whitespaces mit "=20" maskiert und wann mit "&# 160;"? Oder ist "=20" nie korrekt?


---------
Suchwörter: postfix regexp regular expression reguläre ausdrücke whitespace leerzeichen maskieren filter spam codierung code erzwungen non blockable

Jana
04-12-2003, 18:11
So weit ich es verstanden habe handelt es sich hier um einen Mail-Check.
Dieser Check sieht bei jedem Programmierer so aus wie dieser ihn sich vorstellt.
Das ganze ist immer sehr individuell.