Raspberry PI + eibd (bcusdk) + cEMI-Patch + FHEM

This is a very small reminder for myself how i have done the installation of the cEMI patched Version of eibd on the Raspberry PI and got it running with my FHEM installation (helpfull start was here http://ekblad.org/knx/pi.html):

logon on the raspberrypi (with raspbian)

ssh -l pi raspberrypi

default pw was raspberry

wget –no-check-certificate https://www.auto.tuwien.ac.at/~mkoegler/pth/pthsem_2.0.8.tar.gz
tar -xzvf pthsem_2.0.8.tar.gz
cd pthsem-2.0.8/
./configure
make
sudo make install


not used

LD_LIBRARY_PATH=”/usr/local/lib/
ldconfig
cd ..

due to

sudo apt-get install autoconf
sudo apt-get install libtool

sudo apt-get install git
git clone git://bcusdk.git.sourceforge.net/gitroot/bcusdk/bcusdk

cEMI Patch:
download manually from
http://sourceforge.net/tracker/?func=detail&aid=3603926&group_id=150280&atid=777113
bcusdk-usb-cemi.patch

and

mv bcusdk-usb-cemi.patch bcusdk/
patch -p1 < bcusdk-usb-cemi.patch

> patching file eibd/libserver/cemi.cpp
> patching file eibd/libserver/cemi.h
> patching file eibd/libserver/eibusb.cpp
> patching file eibd/libserver/Makefile.am

autoreconf -i
./configure --enable-onlyeibd --enable-usb --enable-eibnetiptunnel --enable-eibnetipserver --enable-eibnetip
make
sudo make install
sudo findknxusb

>> 2:3:1:0:0 (example output)

sudo eibd -t1023 -D -S -i --eibaddr=1.1.150 usb:2:3:1:0:0

—- from fhem wiki (german)

sudo apt-get install perl libdevice-serialport-perl
sudo apt-get install libio-socket-ssl-perl
# fhem-X.Y.deb replace with an actual version
wget http://fhem.de/fhem-X.Y.deb
sudo dpkg -i fhem-X.Y.deb
# maybe
sudo apt-get install -f

Update:
While my time-zone wasn’t set correct my automatics doesn’t work.

dpkg-reconfigure tzdata

mod_pagespeed vs. supercache / ein Erfahrungsbericht

Ich habe vor kurzem einen Serverumzug hinter mich gebracht. Die Gelegenheit war günstig – da ich sowieso am basteln war – das aktuelle mod_pagespeed-Modul von google testweise in Betrieb zu nehmen. (Installation-Anleitung hier : ich verwende das ubuntu 64bit Packet)
Meine Webseite war bisher in im Speed-Test von google nicht unbedingt ein Geschwindigkeitsweltmeister. Wenn man im Firefox / Firebug sich anschaute was die Verzögerungen in der Ladezeit darstellte – waren es leider in der Regel externe Grafiken (facebook, gravatar, g+, adsense) die für deutliche Verzögerungen bei der Ladezeit sorgten.

Ein weile hatte ich dann das supercache-plugin für WordPress im Einsatz – dies biss sich aber sehr oft mit meinem Mobile-Device-theme.

Hier also meine Vorschläge für eine möglichst flotte Ladezeit bzw. hohe Punktzahl beim Test.

  • Reduktion von externen Grafiken bzw. verlagern auf CDN (Content-Delivery-Network-Server)
  • Werbung (zum Betrieb irgendwie unerlässlich) auf zentrale Blickachsen konzentrieren – ich habe sowieso die Erfahrung gemacht – weniger ist mehr – und direkt unter dem Titel, ist es auf der zentralen Blickachse) (btw- Adblock macht jede Website mit Werbung etwa bis zu 0,5sek langsamer – da erst das laden unterbrochen wird und die Seite auf die Antwort wartet die nicht kommt)

mod_pagespeed halte ich gegenüber supercache deutlich (!!!) überlegen. Es wird jede HTML Seite extrem komprimiert und gezippt. Javascript und Bilder werden komprimiert und das ohne weitere Einstellung für alle (!!!!) dynamischen und undynamischen Seiten einer Domain. (Kleine Empfehlung – schaut euch mal in Firebug diese Seite an). Zu erkennen sind die komprimierten Dateien an einem veränderten Dateinamen (pagespeed…).

Besonders bemerkbar macht sich mod_pagespeed beim Einsatz von Foto-Gallerien. Hier werden die Fotos und Grafiken noch einmal ordentlich zusammengedampft bevor sie übertragen werden.

Anbei findet ihr die aktuelle Einstellung für diese Domain – (Eintrag in der Apache-Config für die Domain):

ModPagespeed on
ModPagespeedFileCachePath "/var/mod_pagespeed/cache/"
ModPagespeedFileCacheSizeKb 102400
ModPagespeedFileCacheCleanIntervalMs 3600000
ModPagespeedLRUCacheKbPerProcess 1024
ModPagespeedLRUCacheByteLimit 16384
ModPagespeedRewriteLevel PassThrough
ModPagespeedEnableFilters combine_css,extend_cache,rewrite_images
ModPagespeedEnableFilters rewrite_css,rewrite_javascript
ModPagespeedEnableFilters combine_heads,inline_css,local_storage_cache,collapse_whitespace

Wichtig ist: Welche Filter aktiviere ich sinnvoll für meine Seite? Ich habe hier im wesentlichen die aktiviert, die ich für Sinnvoll und wenig eingreifend empfand. Es gibt einige Filter die als sehr eingreifend eingestuft werden. Hier sollte man mit umsicht testen. Ich denke es gibt noch einige “ungefährliche” Filter – wie zB.

ModPagespeedEnableFilters remove_quotes

oder

ModPagespeedEnableFilters remove_comments

Fazit

In Summe ist das Werkzeug noch in der Entwicklung. Die Entwickler schreiben aber – mit welchem Risiko das aktivieren der entsprechenden Filter ist. Ein “kleiner” SEO Effekt geht von einer Seite mit entsprechend hoher Punktzahl aus – das sich die eigenen Nutzer etwas freuen – ist natürlich ein wichtiger und netter Effekt.

Diese Blogs waren etwas anderer Meinung – aber vielleicht haben Sie es auch nicht so lange beobachtet wie ich:
http://gettoweb.de/netzwelt/mod-pagespeed-angetestet/

Tobi hat abbrüche beobachtet – ich hatte bisher keine offensichtlichen und ich denke es ist im wesentlichen auf fehlerhaften gebrauch der Filter zurückzuführen oder auf eine frühe Entwicklungsversion: http://www.tobis-home.de/blog/2010/11/ausprobiert-apache2-mod-pagespeed.html und hier ging es dann: http://www.tobis-home.de/blog/2011/03/apache2-mod-pagespeed-im-einsatz.html

Orginal mod_pagespeed Seite:

https://developers.google.com/speed/pagespeed/mod

 

SEO – Das TITLE-Element und der “Datei-Name” in WordPress

Wer in den Webmaster-Tools von Google auf HTML-Verbesserungen schaut – und ein Forum oder eine etwas größere Seite betreibt wird feststellen, daß sehr viele Seiten den “Fehler” Doppelte “title”-Tags haben.
Hier hat sich für mich der folgende WordPress-Theme-Code – als recht gut erwiesen:

<title>
<?php if (is_home() or is_front_page()) { ?>
<?php the_title(); ?> / <?php bloginfo('name');  ?> / main / <?php $pageNumbor = (get_query_var('paged')) ? get_query_var('paged') : ''; echo $pageNumbor; ?>
<?php } elseif(is_category()) {  ?>
<?php single_cat_title(); ?> / category / <?php bloginfo('name'); ?> / <?php $pageNumbor = (get_query_var('paged')) ? get_query_var('paged') : ''; echo $pageNumbor; ?>
<?php } elseif(is_tag()) {  ?>
<?php single_tag_title(); ?> / tag / <?php bloginfo('name'); ?> / <?php $pageNumbor = (get_query_var('paged')) ? get_query_var('paged') : ''; echo $pageNumbor; ?>
<?php } elseif(is_archive()) {  ?>
<?php wp_title(); ?> / archive / <?php bloginfo('name'); ?> / <?php $pageNumbor = (get_query_var('paged')) ? get_query_var('paged') : ''; echo $pageNumbor; ?>
<?php } elseif(is_page()) {  ?>
<?php the_title(); ?> / <?php bloginfo('name'); ?>
<?php } elseif(is_single()) {  ?>
<?php the_title(); ?> / <?php bloginfo('name'); ?>
<?php } elseif(is_404()) {  ?>
404 / <?php bloginfo('name'); ?>
<?php } elseif(is_search() ) { ?>
    Serach results / <?php bloginfo('name'); ?>
<?php } else { ?>
   <?php wp_title(); ?> // <?php bloginfo('name'); ?>
<?php } ?>
</title>

Hierbei – wird abhängig von der Art der Seite – Erst die Überschrift des Inhalts und dann die Art des Ergebnisses bzw. die Seitenanzahl erzeugt.

Ebenso wertvoll hat sich die folgende Einstellung unter “Permalinks” erwiesen:

/%year%/%monthnum%/%postname%.html

.
 

Semantisches Netz – SEO mit Microformaten

Dies ist der 2. Teil meiner kleinen SEO Serie. (Der 1. ist hier zu finden: Semantisches Netz zur Suchmaschinenoptimierung.)
Hier geht es heute um hAtom und hFeed. Die WordPress “out-of-the-box” Designs bringen Mehrheitlich die Benutzen Mikroformate zur Auszeichnung des Inhalts – und damit der besseren Findbarkeit von Inhalten mit.
Was ist ein Mikroformat?
Im wesentlichen wird an den entsprechenden Stellen – die es in Ihrem Inhalt entsprechen – eine bestimmte HTML-Style-Klasse zu verwendet. Hier ein Beispiel (Bei dem schema.org und Mikroformat parallel verwendet werden:

<span itemprop="author" id="hcard-Prename-Lastname" class="vcard">

Wie man sieht – sind die beiden Auszeichnung relativ simpel nebeneinander verwendbar. Hier wird der Suchmaschine mitgeteilt das jetzt der Author mit Vor- und dann Nachname folgt. Beim Inhalt sieht es ähnlich aus:

div itemprop="articleBody" class="entry-content">

Auch hier ist die Verwendung von Schema.org und Microformat einfach darstellbar. Ein guter Start ist hier zu finden: http://microformats.org/wiki/Main_Page
http://blog.no-panic.at/2006/11/16/hatom-and-wordpress/

Semantisches Netz zur Suchmaschinenoptimierung

Zur besseren durchsuchen des Internets gab es schon vor einer Weile die Idee Texte und Bilder entsprechend des Inhalts auszuzeichnen. Also der Suchmaschine die Bedeutung des Inhalts mitteilen. Dies hat durchaus eine Bedeutung.

Google hat mit einigen kleinen Verbesserungen – die sich in der Suche schon bemerkbar machen – begonnen diese Bedeutungen den Suchergebnissen zu integrieren.Bildschirmfoto 2012-12-20 um 22.21.54

Dabei wird der Author mit Bild angezeigt – das macht – jedenfalls die Suche für mich deutlich charmanter und persönlicher.

Sofern ein Content-Management-System verwendet wird, läßt sich der Inhalt recht schnell erweitern. Hier für den Author ein Code-Snippet für das typische WordPress -Theme:

<article itemscope itemtype="http://schema.org/BlogPosting"  id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
...
<div style="display:none;">
        <span itemprop="dateCreated" class="published"><?php esc_attr(the_date('Y-m-d')); ?></span> -
        <span itemprop="dateModified" class ="updated"><?php esc_attr(the_modified_date('Y-m-d')); ?></span>
        <span itemprop="url"><a href="<?php echo get_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></span>
        <span itemprop="author" id="hcard-Prename-Lastname" class="vcard">
            <div itemscope itemtype="http://schema.org/Person">
              <span itemprop="name" class="fn">
<a itemprop="url" class="url" href="<?php the_author_meta('user_url'); ?>?rel=author"><?php the_author_meta('display_name'); ?></a></span>
                      <span itemprop="email" class="email"><?php the_author_meta('user_email'); ?></span>
            </div>
        </span>
</div>

Details zu den Ausprägungen findet ihr auf den seiten von schema.org. Google hat mit dem Webmaster-Blog und dem Test-Tool für strukturierte Daten zwei weitere gute Anlaufpunkte.
Ansonsten gibt es hier und hier zwei weitere gute Infos zum Thema “Eigenes Bild in der google Suche”:
Eine weitere Möglichkeit sind “Mikroformate” – aber dazu später mehr.