Facebook Instant Articles fĂĽr WordPress

Seit der f8-Konferenz Anfang April 2016 hat Facebook Instant Articles als Funktion für Seitenbesitzer aktiviert. Hierdurch kann jeder, der einen WordPress Blog betreibt, diese Funktion nutzen kann. Bei den Facebook Instant Articles werden die einzelnen Beiträge eines Blogs direkt auf Facebook Servern zwischengespeichert und in einem vereinfachten Design auf mobilen Endgeräten innerhalb der Facebook App dargestellt. Durch die Speicherung auf den Facebook Servern und das einfachere Design wird die Ladezeit bei einem Abruf durch den Nutzer enorm verkürzt. Weiterlesen

General availability: In-Memory OLTP in Azure SQL Database Premium

You can use In-Memory OLTP to achieve incredible performance gains (up to 30X) for transaction processing and data ingestion in your Azure SQL Database Premium databases, with no or minimal changes to the application. Memory-optimized tables, memory-optimized tables types, and natively compiled T-SQL modules are now generally available in all Premium databases, including databases in Premium elastic pools.

Consider using In-Memory OLTP for the following scenarios:

To complement the transaction processing benefits of In-Memory OLTP, Azure SQL Database also supports columnstore indexes to improve the performance of reporting and analytics workloads.

To learn more about In-Memory OLTP and columnstore indexes in Azure SQL Database, see the Azure blog post.

Radio-Sender mit dem Raspberry Pi

Der Raspberry Pi kann mit einfachen Mitteln ohne Investitionen oder Aufwand als FM-Radio-Sender eingesetzt werden. Als Antenne reicht ein einfacher Draht. Wie es funktioniert, stellen wir im Folgenden vor.

Vorbereitung

FĂĽr dieses Projekt brauchen wir folgendes:

  • Raspberry Pi, funktionsfähig, mit Betriebssystem
  • Ein StĂĽck Draht fĂĽr die GPIO-Schnittstelle, am besten mit Buchse zum direkten Aufstecken
  • Software: Das Projekt wurde ursprĂĽnglich von der Imperial Collage Robotik Society im Zuge eines pihack Wochenendes erstellt. Es ist ein einfaches C-Programm, welches ĂĽber Python aufgerufen wird
  • Soundfile: Eine beliebige WAV-Datei, die gesendet weden soll. Die Datei muss im Format WAV, 16bit, mono vorliegen.
  • Radio: einen handelsĂĽblichen FM-Radioempfänger, um das ausgesendete Signal wieder zu empfangen.

DurchfĂĽhrung

Wie funktioniert es nun?

Der erste Schritt: Der Draht muss am GPIO-Pin 4 eingesteckt werden. Die PIN-Belegung gibt es hier für den Raspberry Pi 2 und den Raspberry Pi 3.

Im zweiten Schritt wird die Software auf dem Raspberry Pi installiert. Die Software kann man hier herunterladen und danach mit dem nachfolgenden Befehl im home-Verzeichnis entpacken:

tar -xf Pifm.tar

Im Archiv enthalten:

  • pifm: das kompilierte Programm
  • pifm.c: der Source Code des Programms. Hier kann man selbst Anpassungen vornehmen.
  • PiFm.py: das Python Script welches wir aufrufen werden
  • sound.wav: die Sound-Datei, die gesendet werden soll.

Radiosender in Betrieb nehmen.

Hinweis: Den Raspberry Pi als Sender zu verwenden ist in den meisten Ländern verboten!

Der Aufruf des Senders erfolgt mit nachfolgendem Befehl:

sudo ./pifm sound.wav 100.0

Mit einem üblichen Radioempfänger kann man nun das ausgestrahlte Signal auf 100.0 MHz FM empfangen. Die Reichweite beträgt je nach Antennenqualität und Abschirmung zwischen 10 und mehreren 100 Metern.

Das Programm ist sehr einfach aufgebaut. Als Argumente werden das Soundfile und die Frequenz in Megahertz angegeben. Wer experimentierfreudig ist, der kann hier mit den Ăśbergabewerten spielen oder sogar selbst Ă„nderungen am Code vornehmen.

Verschiedene 301-redirect-Methoden

Es gibt zahlreiche Methoden, um auf den verschiedenen Webservern einen korrekten 301-redirect (permanent) zu erwirken.

Ein 301-redirect erlaubt Besuchern und Suchmaschinen den Zugriff auf eine Website, wenn diese verschoben worden ist. Wenn Sie den Domainnamen Ihrer Website geändert oder die Dateinamen der Seiten geändert haben, dann müssen Sie eine Verknüpfung zu den neuen URLs für Besucher und Suchmaschinen-Robots herstellen. Die 301-redirect-Weiterleitung als permanente Weiterleitung ist die suchmaschinenfreundlichste Methode der Umleitung auf die neue URL oder Seite und ist der aktuelle Standard für SEO. Hier finden Sie Anleitungen, wie Sie eine 301-redirects auf den verschiedenen Servern erstellen können.

.htaccess 301 Redirect

Wenn die .htaccess-Datei nicht vorhanden ist, erstellen Sie diese neu. Die Datei wird ohne Dateinamens-Erweiterung mit einem einfachen Texteditor erstellt. Laden Sie die Datei in das Stammverzeichnis Ihrer alten Website. Normalerweise ist das in / public_html oder / www auf Ihrem Server.

Hinweis: Ihr Webserver muss ein Linux-System mit Apache-Webserver und aktiviertem mod_rewrite Modul sein.

FĂĽgen Sie Folgendes zu Ihrer .htaccess-Datei hinzu:

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) https://www.new-site.com/$1 [R=301,L]

Wenn sie statt einer allgemeinen Weiterleitung für die ganze Website lieber einzelne Dateinamen angeben wollen, können Sie eine alte URL nach folgendem Schema auf eine neue URL umleiten:

redirect 301 /old_page.html https://www.yourdomain.com/abc/new_page.html

PHP Redirect:

<?
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.new-domain.com" );
?>

In ASP:

Ă–ffnen Sie die alte Website und ersetzen Sie den kompetten Code durch folgenden Abschnitt:

<{e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}@ Language=VBScript {e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}>
<{e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.new-location.com"
{e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}>

In ASP .NET:

<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.new-location.com");
}
</script>

Mit IIS auf einem Windows-Server:

  1. Klicken Sie im Internetdienste-Manager mit der rechten Maustaste auf die Datei oder den Ordner, die Sie umleiten möchten.
    2. Wählen Sie „eine Umleitung zu einer URL“ aus.
    3. Geben Sie die Umleitungsseite ein.
    4. Markieren Sie „the exact url entered above“ und die „a permanent redirection for this resource“.
    5. Klicken Sie auf „Ăśbernehmen“.

web.config 301 redirect

Mit dem ersten Code-Beispiel können Sie eine einzelne Seite an einen neuen Speicherort umleiten. Das empfiehlt sich, wenn Sie wichtige Seiten ihrer Website verschoben oder umbenannt haben.

1. Öffnen Sie web.config in dem Stamm-Verzeichnis der alten Website
2. Ergänzen Sie nachfolgenden Code:

<configuration>
  <location path="services.htm">
    <system.webServer>
       <httpRedirect enabled="true" destination="http://domain.com/services" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>
  <location path="products.htm">
    <system.webServer>
      <httpRedirect enabled="true" destination="http://domain.com/products" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>
</configuration>

Sie können soviele Einträge wie notwendig hinzufügen.

Das nachfolgende Code-Beispiel leitet ein ganzes Verzeichnis an einen neuen Speicherort um. Wenn Sie zum Beispiel https://domain.com/olddir/ zu http://domain.com/newdir/ umleiten möchten, dann öffnen Sie die Datei web.config im alten Verzeichnis und fügen Sie folgende Zeile innerhalb des Abschnitts <system.webServer> hinzu:

<httpRedirect enabled="true" destination="http://domain.com/newdir" httpResponseStatus="Permanent" />

In ColdFusion:

FĂĽgen Sie den folgenden Code zu Ihrer ColdFusion-Seite hinzu:

<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.new-site.com">

Alle Subdomains auf www umleiten

Einige Webmaster bevorzugen es, domain.com auf www. domain.com umzuleiten, um die Suchmaschinenzugriffe zu optimieren. Dabei kann es jedoch vorkommen, dass einige Links auf die nicht-www-Seite zeigen und andere auf die www-Seite. Nur wenn die beiden Domains zusammengefasst sind, funktionieren alle ankommenden Links wie gewünscht. Das kann aber dazu führen, dass in den Ergebnissen von Suchmaschinen beide Seiten gemeinsam dargestellt werden. Mit der entsprechenden Umleitung kann man das wieder zusammenfassen.

Subdomains mit .htaccess umleiten

FĂĽgen Sie die folgenden vier Zeilen in Ihre .htaccess Datei ein und ersetzen Sie „domain.com“ durch Ihre eigene Domain. Beachten Sie bitte, dass diese Art der Umleitung nur auf Linux-Servern mit Apache und dem Modul Mod-rewrite funktioniert.

Options +FollowSymlinks
RewriteEngine on
rewritecond {e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}{http_host} ^domain.com [nc]
rewriterule ^(.*)$ https://www.domain.com/$1 [r=301,nc]

Subdomains mit web.config unter IIS umleiten

Damit die Umleitung mit web.config-Datei funktioniert, muss das URL Rewrite Modul im Microsoft Internet Information Server IIS 7 aktiviert werden. Dann wird folgender Code in die web.config-Datei eingefĂĽgt:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Redirect to WWW" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^domain.com$" />
          </conditions>
          <action type="Redirect" url="http://www.domain.com/{R:0}" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Wenn Sie Probleme haben, die Umleitung selbst einzurichten, stehen wir Ihnen gerne zur Verfügung.

Kubernetes landet im Azure Container Service

Microsofts Cloud-Angebot zur Planung und Verwaltung von Container-Anwendungen bietet spätestens mit der Ergänzung von Kubernetes das umfangreichste Angebot an Orchestrierungswerkzeugen.

Microsofts Azure Container Service (ACS) ist seit April dieses Jahres ein vollwertiger Cloud-Dienst des Unternehmens. Mit ihm ließen sich bislang auf der Azure-Plattform zur Planung und Orchestrierung von Container-Anwendungen entweder die Docker-Techniken Swarm und Compose oder – unabhängig von Docker – Mesospheres Datacenter Operating System (DC/OS) nutzen, das wiederum auf dem Cluster-Framework Apache Mesos basiert. Der Cloud-Dienst wurde nun um die Unterstützung für Kubernes ergänzt, das von Google initiierte und wohl wichtigste Container-Orchestrierungswerkzeug. Microsoft bietet damit das umfangreichste Angebot an Orchestrierungswerkzeugen im Container-Umfeld.

Vor allem Container-Orchestrierung, aber noch mehr

Der Kubernetes-Support hat derzeit jedoch noch Preview-Status. Es wird aber bereits die aktuelle Version 1.4 des Tools unterstützt. Zusätzlich nutzt der Cloud-Dienst nun DC/OS 1.8.4, was Verbesserungen beim Job-Scheduling und Marathon-basierte Container-Orchestrierung mitbringt. Damit nicht genug, hat Microsoft die dem Azure Container Service zugrunde liegende Engine als Open-Source-Projekt auf GitHub bereitgestellt. Die Engine selbst ist ein in Go geschriebener Template Processor. Die Unterstützung von Kubernetes passt gut zur Bekanntmachung aus dem Juli, dass Brendan Burns, einer der Kubernetes-Erfinder, von Google zu Microsoft gewechselt war.

Eine weitere Nachricht ist, dass die Azure Container Registry schon bald den Status einer offenen Beta hat. Dabei handelt es ich um einen Dienst, um Docker-Images in einer Private Cloud nutzen zu können. Am 14. November soll dieser Dienst dann verfügbar sein. Begleitet werden all diese Neuerungen von Features in den Entwicklerwerkzeugen Visual Studio, Visual Studio Team Services und Visual Studio Code, die dabei helfen sollen, Container-Anwendungen mit dem Azure Container Service betreiben zu können.

Docker und Kubernetes

Mit Docker lassen sich Anwendungen samt ihrer Abhängigkeiten in sogenannte Container verpacken, in denen sie sich später leicht weitergeben und ausführen lassen. Im Vergleich zu virtuellen Maschinen sind die Docker-Container sparsamer im Umgang mit Ressourcen und können schneller starten. Allerdings ist zum Anfang der Konfigurationsaufwand erheblich höher – und hier soll Kubernetes helfen.

Kubernetes war auf Googles Entwicklerkonferenz I/O 2014 vorgestellt worden und hatte schnell UnterstĂĽtzer wie Microsoft, IBM und Red Hat gefunden. Seit Sommer 2015 wird die Software unter dem Dach der von der Linux Foundation betriebenen Cloud Native Computing Foundation (CNCF) entwickelt.

Veritas bringt Datenmanagement auf Azure

Veritas ermöglicht Unternehmen Data Governance und Data Storage jetzt auch auf den Public-Cloud-Services von Microsoft umzusetzen.

Veritas Technologies geht mit Microsoft eine strategische Partnerschaft ein, um die eigenen Datenmanagement-Lösungen auch auf den Cloud-Plattform des Anbieters bereitstellen zu können. Weiterlesen

WhatsApp Nachrichten mit dem Raspberry Pi versenden

Es gibt kaum einen Dienst, der so polarisiert wie WhatsApp. Für viele ist ein Leben ohne diesen Messenger kaum noch vorstellbar. Mit geringem Aufwand können Sie einen Raspberry Pi so konfigurieren, dass damit der Versand von Nachrichten über WhatsApp möglich wird. Das ist für alle Einsatzgebiete des kleinen Rechners praktisch, in denen es darum geht, über aktuelle Ereignisse informiert zu werden – zum Beispiel bei der Heimüberwachung.

Weiterlesen

iOS 10: So richten Sie die neuen WLAN-Anrufe am iPhone ein

Nachdem Telekom-Kunden bereits seit einiger Zeit die Funktion „WLAN-Anrufe“ nutzen können,steht das Feature jetzt auch O2- und Vodafone-Kunden zur VerfĂĽgung.

Wichtig: Je nach Netzbetreiber und Tarif können Datenübertragungskosten für WLAN-Anrufe anfallen. Informieren Sie sich daher auf der Webseite Ihres Mobilfunkanbieters (Telekom, o2, Vodafone)

1.Schritt:

Nehmen Sie Ihr iPhone und öffnen Sie die Einstellungen.

ios_wlan_1

2. Schritt:

Scrollen Sie nach unten, bis Sie den MenĂĽpunkt „Telefon“ sehen und wählen Sie ihn aus.
ios_wlan_2

3. Schritt:

Tippen Sie nun auf „WLAN-Anrufe“.

4. Schritt:

Ziehen Sie den Schieberegler neben „WLAN-Anrufe“ nach rechts und bestätigen Sie Ihre Eingabe.

ios_wlan_3

5. Schritt:

Anschließend können Sie die Einstellungen wieder verlassen.

Wenn Sie Empfang haben, nutzt Ihr iPhone die Mobilfunkverbindung fĂĽr Notrufe. Wenn „WLAN-Anrufe“ aktiviert ist, können Notrufe ĂĽber WLAN abgesetzt werden, wenn Sie keinen Empfang haben. Der Standort Ihres Geräts kann fĂĽr Notrufe verwendet werden, um unabhängig davon, ob die Ortungsdienste aktiviert sind, schnelle Hilfe zu gewährleisten.

WeiterfĂĽhrende Informationen

HTTPS / SSL auf einer Website erzwingen

Den Besucherverkehr vom HTTP-Protokoll auf die HTTPS-Version einer Website zur Nutzung von SSL umzuleiten ist ganz einfach.

Die folgende Methode funktioniert nicht nur mit Microsoft Azure Web Services App, sondern auch mit jeder anderen Website, die auf einem Microsoft IIS (Internet Information Server) Webserver läuft. Bei vielen Kunden setzen wir diese Variante ein, um den Datenverkehr im Internet sicherer zu machen und HTTPS-SSL-Zertifikate sinnvoll zu nutzen. Denn in vielen unserer Hosting-Pakete sind einfachere SSL-Zertifikate für den www-Webserver bereits inklusive enthalten.

HTTPS bzw. SSL aktivieren

Nachdem es innerhalb des Azure Portals keinen Schalter oder keine Option gibt, um den verschlüsselten Datenverkehr zu erzwingen, wird eine web.config Datei im Stammverzeichnis der Web-App angelegt. Das geht am einfachsten über die in Azure integrierte App Kudu, die in jeder WebApp über erreichbar ist. Dort findet man unter Debug Console -> CMD einen Zugriff auf die Verzeichnisstruktur.

Kudu

Unter dem Ordner site\wwwroot\ wird nun eine neue Datei web.config angelegt und mittels dem in Kudu integrierten Editor bearbeitet.

Der Inhalt von web.config:

<configuration>
<system.webServer>
<rewrite>
    <rules>
	<rule name="HTTP to HTTPS redirect" stopProcessing="true"> 
	<match url="(.*)" /> 
	<conditions> 
		<add input="{HTTPS}" pattern="off" ignoreCase="true" />
	</conditions> 
	<action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
      </rule>   
    </rules>
</rewrite>
</system.webServer>
</configuration>

Damit wird, unabhängig von der im hostheader eingegebenen Domain, der Datenverkehr auf die HTTPS-Variante umgeleitet.

Wir nutzen dieses Verfahren selbst bei einigen Kunden, die ausschlieĂźlich auf SSL-verschlĂĽsselten Webzugriff setzen.

Wetterstation mit dem Raspberry Pi 2, Windows 10 IoT Core und Microsoft Azure

Ein interessantes Projekt fĂĽr den Raspberry Pi mit Windows 10 IoT Core und Microsoft Azure haben wir bei hackster.io gefunden.

Unter https://www.hackster.io/windows-iot/weather-station-67e40d ist beschrieben, wie man aus dem Raspberry Pi 2 eine kleine Wetterstation bauen kann.

Weiterlesen