blog.bartlweb - a technologist's external brain

Alle Artikel

Windows SMTP-Server als Relayhost verwenden

Die folgenden Einstellungen sind notwendig um den mit Windows Server mitgelieferten SMTP-Server als Relayhost zu konfigurieren. Ziel ist es, dass alle internen Rechner Mails über diesen Server mit Hilfe eines externen SMTP-Servers versenden können.

Eigenschaften des Servers

  • Allgemein - IP-Adresse: (Keine zugewiesen)
  • Zugriff - Authentifizierung - "Anonymer Zugriff"
  • Zustellung - Ausgehende Sicherheit - Benutzername: Benutzername des externen Mailservers
  • Zustellung - Ausgehende Sicherheit - Kennwort: Kennwort des externen Mailservers
  • Zustellung - Ausgehende Sicherheit - TLS-Verschlüsselung
  • Zustellung - Erweitert - Smarthost: IP/DNS-Name des externen Mailservers

Eigenschaften der Domäne

  • Allgemein - "Relay eingehender Nachrichten an diese Domäne erlauben"

Klick und Doppelklick-Event auf dasselbe Element per JS abfangen

Die folgende jQuery-Funktion von Jacek Becela (http://gist.github.com/399624) erlaubt das Abfangen von Klick- und Doppelklick-Events auf ein Element. Werden beide Events mit den jQuery-Standardfunktionen gesetzt, so wird das Klick-Event auch bei Doppelklicks ausgeführt. Sollen beide Events getrennt behandelt werden hilft der folgende Code. Dieser wertet in <= 300ms hintereinanderfolgende Klicks als Doppelklick alle anderen als einfache Klicks.

Aufruf

jQuery("a.doubleclick").single_double_click(function(){
  alert("single click");
}, function(){
  alert("double click");
});

Code

// Author: Jacek Becela
// Source: http://gist.github.com/399624
// License: MIT
 
jQuery.fn.single_double_click = function(single_click_callback, double_click_callback, timeout) {
  return this.each(function(){
    var clicks = 0, self = this;
    jQuery(this).click(function(event){
      clicks++;
      if (clicks == 1) {
        setTimeout(function(){
          if(clicks == 1) {
            single_click_callback.call(self, event);
          } else {
            double_click_callback.call(self, event);
          }
          clicks = 0;
        }, timeout || 300);
      }
    });
  });
}

Linux-Befehl oder Skript im Hintergrund ausführen

Gerade bei Befehlen oder Skripten die eine längere Laufzeit haben, ist es oft von Vorteil wenn man diese im Hintergrund ausführen kann. Somit wird die Konsole bzw. die SSH-Sitzung nicht blockiert bzw. im Falle der SSH-Verbindung kann diese Beendet werden ohne, dass die Ausführung des Befehls abgebrochen wird.

Um einen Befehl im Hintergrund auszuführen fügen Sie diesem am Ende ein & hinzu.

./myscript& rm -R largefolder&

Webdav-Probleme im Zusammenspiel mit Symbian S60

Um den in Symbian^3 integrierten Webdav-Client mit einem Apache-Webserver zusammenarbeiten zu lassen, sind die folgenden Punkte zu beachten:

  • In Benutzernamen und Passwort werden nicht alle Sonderzeichen akzeptiert. - Probieren sie daher einmal ein einfacheres Passwort.
  • Ordner mit dem Namen private werden nicht angezeigt.
  • Der Symbian-Webdav-Client benötigt am Server ein redirect-carefully.

redirect-carefully

Nicht nur der Symbian Webdav-Client sondern auch der in Windows integrierte Webdav-Client benötigen etwas Zuspruch vom Server. Typische Symptome sind das nicht anzeigen der Ordnerstruktur oder nur die Anzeige des 1. Levels. Abhilfe schaffen die folgenden Apache Direktiven:

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
BrowserMatch "^Microsoft-WebDAV-MiniRedir/" redirect-carefully
#BrowserMatch "^S60 Remote Storage WebDav client" redirect-carefully

Login-Screen unter Windows 7 tauschen

Um den Login-Screen unter Windows 7 mit einem eigenen Hintergrundbild zu versehen, machen wir uns der Möglichkeiten der OEM-Hersteller zu nutzen. Achten Sie beim Erstellen der Grafik, dass diese im JPEG-Format vorliegt, die Auflösung der maximal genutzen Bildschirmauflösung entspricht und die Dateigröße 256KB nicht überschreitet.

Bennen Sie die Datei backgroundDefault.jpg und legen Sie dieses im Ordner C:\Windows\System32\oobe\info\backgrounds\ ab. Dabei kann es durchaus vorkommen, dass Sie die letzten beiden Ordner info und backgrounds noch erstellen müssen.

Zu letzt muss in der Registry unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Logo?nUI\Background der Wert von OEMBackground auf 1 gesetzt werden. Nach dem Abmelden ist der neue Hintergrund sofort sichtbar.

Login-Screen unter Mac OS tauschen

Wer den Standard-Weltraumhintergrund des Login-Screens unter Mac OS tauschen möchte muss dazu nur eine einfache JPEG-Datei auswechseln. Achten Sie darauf das Ihre neue Grafik unbedingt als JPEG-Datei gespeichert wird und eine Auflösung von 2560x1600 bzw. eine Dateigröße von 500KB nicht überschreitet.

Sobald Ihre Grafik bereit ist benennen Sie zunächst die Original Datei DefaultDesktop.jpg im Ordner /System/Library/CoreServices/ um. Danach können Sie Ihren neuen Hintergrund dort hin kopieren und als DefaultDesktop.jpg benennen. Setzen Sie nun die Berechtigungen der Datei auf -rw-r--r-- (644) und root:wheel. Nun können Sie sich abmelden und den neuen Hintergrund genießen.

Die PHP-Funktion file_get_contents() hinter einem Proxy-Server nutzen

Gerade bei größeren Unternehmen kommt es des öfteren vor, dass auch die Webserver hinter einem Proxy stehen und nur über diesen Zugriff auf das Internet oder speziell freigegebene Urls erhallten. Um dennoch die PHP-Funktion file_get_contents() für das holen von Textdateien von einem entfernten Server zu nutzen, muss man dieser den Proxy-Server mitteilen.

$context = stream_context_create(array(
    'http' => array(
        'proxy' => "tcp://192.168.0.254:8080",
        'request_fulluri' => True,
    )
));
$fileContent = file_get_contents('http://www.domain.com/file.txt', false, $context);

Redirect via Apache VirtualHost

Die folgende VirtualHost-Konfiguration für Apache ermöglicht den einfachen Redirect von einer Domain auf eine andere.

<VirtualHost *>
  ServerName www.example.com
  Redirect 301 / http://www.target.com/
</VirtualHost>

Setzt man die Direktive ServerAlias auf bestimmte Subdomains oder auf *.domain.com, können diese bzw. alle Subdomains in einem Schritt auf die entsprechende Domain umgeleitet werden.

Outlook und Apple Kontakte bzw. Kalender kompatible vCard/vCal/iCal-Dateien

Gerade wenn Kontakte im vCard-Format bzw. Termine im vCal/iCal-Format automatisch generiert werden sollen und auf allen Systemen einwandfrei dargestellt werden müssen ist einiges an Testaufwand notwendig. Die folgenden Templates sind unter den Apple MacOSX Standard PIM-Programmen und Microsoft Outlook getestet.

Wichtig ist die Auslieferung der vCard-Datei in der Zeichenkodierung ISO-8859-1 und die Auslieferung der vCal/iCal-Datei in UTF-8.

vCard

Mime-Type

text/x-vCard

Codierung

ISO-8859-1

Code

Es können jederzeit nicht vorhandene/benötigte Angaben weggelassen werden. Dabei ist zu beachten, dass wenn möglich die ganze Zeile entfernt wird. Sind Teile des Namens bzw. der Adresse nicht vorhanden, so bleiben die Felder leer, die Position der anderen Felder und die der Beistriche muss aber unverändert bleiben.

Leerzeilen aus Strings entfernen

Die folgenden Regular-Expression entfernt unter PHP Leerzeilen aus Strings.

$content = preg_replace("/[\r\n]+[\s\t]*[\r\n]+/","\n", $content);

Hinweis: Ersetzt man den Parameter für die Ersetzung durch einen leeren String, so werden alle Zeilenumbrüche im String entfernt.