TOP 5 WordPress Plugins

Hier meine persönlichen WordPress-Plugins Favoriten, die bei jeder WordPress Installation dabei sind:

1. Google Analytics for WordPress
Natürlich muss man auch alle Besuche analysieren, und dazu bietet Google Analytics einfach die besten Statistiken. Nach der Installation des Plugins muss nur die UA-Nummer der jeweilig angelegten Seite eingetragen werden. <Webseite>

2. Adsense Manager
Natürlich wollt ihr auch bisschen Geld mit euren Blog verdienen, dazu ist der Adsense Manager ideal. Einfach eine “Ad Unit” anlegen und einen HTML Code in den Post / Temples platzieren, schon wird die Werbung dort eingeblendet. <Webseite>

3. Seo Ultimate
Um den Blog auch Suchmaschinen-Freundlich zu halten, ist Seo Ultimate das beste Tool meiner Meinung nach. Es werden Optimierungs Fehler angezeigt, und es können auch einfach Meta Tags, Beschreibungen etc bei Artikeln hinzugefügt werden. Ein weiteres cooles Feature ist das maskieren von Affiliate-URLs. So kann man einfach Links zu Affiliate Programmen ohne Angst der Abstufung durch Google benutzen. <Webseite>

4. Google Sitemap
Ein weiteres Plugin zur Suchmaschinen Optimierung. Das Plugin erstellt regelmäßig Sitemaps, die an die Google Webmaster Tools übermittelt werden können! <Webseite>

5. Askimet
Ohne diesen vorinstallierten Plugin geht garnichts. Die Spamflut der Bots wird von Tag zu Tag mehr, und mit Askimet kann man dies erfolgreich stoppen! Das Plugin ist Standardmäßig vorinstalliert. Man muss dies nur aktivieren und einen Key auf deren Webseite beantragen. 

ModRewrite aktivieren

Es gab ein paar Fragen per Mail, wie man denn ModRewrite aktiviert.

Hier die einfache Lösung für Apache:

sudo a2enmod rewirte && sudo apache2ctl restart

Natürlich muss auch “All overwrite” für den jeweiligen Vhost aktiviert sein, dazu folgendes Beispiel:

<VirtualHost *:80>
        ServerName phpmin.net
        ServerAlias phpmin.net *.phpmin.net
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/phpmin.net
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
</VirtualHost>

Unter Lighthttpd muessen die Regeln umgebaut werden. Dazu werde ich später noch ein Tutorial verfassen.

Git/SVN Dateien unter Apache verstecken

Wenn ihr eurer Repo direkt über Apache zugänglich machen wollt, dann müsst ihr natürlich den Zugriff auf alle Git/SVN Dateien sperren.

Dies kann einfach mittels folgenden Eintrag in der httpd.conf / apache2.conf geschehen:

<Directorymatch "^/.*/\.git">
Order deny,allow
Deny from all
</Directorymatch>

<Directorymatch "^/.*/\.svn">
Order deny,allow
Deny from all
</Directorymatch>

 

ddwrt – VPN / PPTPd Server einrichten

ddwrt ist eine super Custom Firmware für einen WRT54G und allen anderen kompatiblen Router. Praktisch, wenn man von ausserhalb eine VPN Verbindung zu seinem Router (dem Netzwerk) herstellen kann.

Zuerst muss ddwrt auf dem jeweiligen Gerät installiert werden.
Eine Anleitungen findest du hier.

Nach der Installation & Konfiguration muss nun einfach der VPN Server aktiviert werden: (Services -> VPN)

Einfach das Passwort und den Benutzernamen ersetzen, den Rest kann man so lassen.

Nun noch eine Option im Reiter “Security -> Firewall” deaktivieren:

Wenn noch ein Modem (Router) vor dem ddwrt-Geraet existiert, muss dort auch noch der Port 1723 TCP geöffnet werden!

Tipp:
Wenn man keine Statische IP nutzt, kann man noch einen Dienst wie no-ip.org benutzen!

Facebook – “Gefällt mir” Meldung anzeigen

Man kennt die Seiten, bei denen man um ein Video zusehen, den “Like” Button klicken muss … nur wie funktioniert das ganze?

Zuerst muss man die JavaScript Libary von Facebook laden:

<script src="http://connect.facebook.net/de_DE/all.js#xfbml=1"></script>

Nun wird ein einfacher Like Button erstellt:

<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fphpmin.net&amp;send=false&amp;layout=standard&amp;width=450&amp;show_faces=true&amp;action=like&amp;colorscheme=light&amp;font&amp;height=80&amp;appId=277157945641521" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>

Eine ausführliche Erklärung und Generator zum “Like” Button findest du auf der Facebook Developer Seite.

Um nun das Ereignis abzurufen, muss nur folgender JavaScript-Code benutzt werden:

FB.Event.subscribe('edge.create', function(href, widget) {
    alert("Vielen Dank fuer den Like!");
}

Nun kommt direkt nach den Klick auf “Gefällt mir” eine Alert-Meldung!

ProFTPd installieren & konfigurieren

[english version] ProFTPd mit Benutzerverwaltung könnt ihr einfach mittels der Packetverwaltung installieren:

sudo apt-get install proftpd

Passt die Konfigurationsdatei nun an:

DefaultRoot ~
AuthOrder mod_auth_file.c  mod_auth_unix.c
AuthUserFile /etc/proftpd/ftpd.passwd
AuthPAM off
RequireValidShell off

Nun startet ProFTPd neu:

sudo /etc/init.d/proftpd restart

Legt nun einen Systemuser für ProFTPd an:

sudo adduser ftponly

Jetzt müssen nurnoch die FTP-Benutzer angelegt werden, dies geschieht so:

sudo ftpasswd --passwd --name ftpuser --uid 1001 --home /var/www/ --shell /bin/false

Die UID könnt ihr vom Nutzer ftponly übernehmen, oder einen neuen Systembenutzer erstellen. Jetzt habt ihr einen funktionierenden FTP Server.

Ein anders Mal werde ich erklären, wie man ProFTPd in Verbindung mit MySQL nutzen kann, und wie man SSL aktiviert.

 

Facebook “Like / Gefaellt mir” Page erstellen

Ihr benötigt eine Facebook Like Page für eine Webseite von euch?  Eine Facebook Like Page, muss man zuerst die Page liken, um News, oder sonstigen ansehen zu können!

Hier die Anleitung dazu:

Zuerstmal erstellt ihr eine PHP Datei, hier der Source:

<?php
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);

if (empty($data["page"]["liked"])) { ?>
<div style="position: absolute;">
	Vielen Dank fuers Liken :)
</div>
<?php } else { ?>
	Bitte auf den "Gefällt mir" Button klicken!
<?php } ?>

Diese Speichert auf euren Webspace / Server ab, und kann natürlich von euch komplett angepasst werden.

Dann geht ihr zum Facebook Developer Center und erstellt eine neue App. Gebt die URL der erstellen Webseite als “Page Tab URL” an:

Nun noch “Page Tab Name” ausfuellen, speichern und die App ID in die Zwischenablage kopieren:

Ersetzt bei dem folgenden Link die App ID und kopier die in deine Adresszeile:

http://www.facebook.com/apps/application.php?id=APP-ID

Und fügt die App zu eurer Seite hinzu:

Nun noch das Default Landing Tab festlegen (unter Seite bearbeiten und dem 2. Menüpunkt):

Nun habt ihr eine eigene Facebook Like Page :)

pptpd Ip-Tables Regeln

PPTPD eingerichtet aber kein Internet bei der VPN Verbindung? Dann müssen eventuell noch die richtigen Regeln für iptables eingerichtet werden.

Hier die benötigten iptables Regeln:

iptables -P FORWARD ACCEPT
iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEP

 

OVH Failover IP einer Virtuellen Maschine zuordnen

Es wird leider nirgends richtig erklärt, wie man einen Gast eine FailOVER IP Adresse zuordnet. Erstellt eine Failover Adresse im Manager V3 unter “dedizierte Server > Dienstleistungen > Failover-IP“:

Sobald die IP fertig eingerichtet ist, muss diese nun einer Mac Adresse zugeordnet werden “dedizierte Server > Dienstleistungen > Virtuelle MAC für VPS“:

Für das Gast System muss nun noch der Netzwerk-Typ “Bridge” ausgewählt werden. Startet den Server und tragt folgendes in die Netzwerk Konfigurations-Datei:

/etc/network/interfaces:
auto eth0
iface eth0 inet static
address <FAILOVER IP ADDRESSE>
netmask 255.255.255.255
post-up /sbin/ip route add <SERVER IP>.254 dev eth0
post-up /sbin/ip route add default via <SERVER IP>.254

… startet das Netzwerk neu:

/etc/init.d/networking restart

Jetzt müsste die Virtuelle Maschine von aussen erreichbar sein!

# Wenn keine DNS Auflösung funktioniert, müsst ihr noch einen DNS Server eintragen:

/etc/resolv.conf:
nameserver 8.8.8.8

und das Netzwerk nochmal neustarten.

Installation von Apache / PHP und MySQL unter Ubuntu

Hier eine kleine Anleitung wie man Apache 2, PHP und MySQL unter Ubuntu (Debian) installieren kann.

Folgende Pakete werden zur Installation benötigt:

sudo apt-get install apache2 php5 mysql-server-5.0

Bei der Installation vom mysql-server wirst du nach einen Passwort gefragt, bitte eines eingeben und merken.

Für die Verwaltung von den Datenbanken empfiehlt sich natürlich eine Weboberfläche wie phpmyadmin. Dies lässt sich auch mittels Paket installieren:

sudo apt-get install phpmyadmin

Bei der Installation müsst ihr das root Passwort des MySQL Servers eingeben.

Den Webserver könnt ihr nun unter http://localhost oder http://<ip-des-servers> erreichen. phpmyadmin findest du im Unterordner /phpmyadmin (http://localhost/phpmyadmin).

Ordnerstruktur:
/var/www/
öffentliches Verzeichnis (erreichbar unter http://localhost)

/var/log/apache2
Hier findest du die Logdateien (Access & Error), die durch Apache erstellt werden.

/etc/apache2/
Konfigurationsdateien wie Module etc

Konfigurationsdateien:
/etc/apache2/httpd.conf 
Die Hauptkonfiguration von Apache. Hier können Module ein/ausgeschalten werden, wie auch Limits erhöht und gesetzt werden.

/etc/apache2/sites-aviable/default
Hier können die vHosts eingetragen werden. Ein Beispiel findest du in folgenden Beitrag.

Starten und Beenden von Apache?

sudo apache2ctl start
sudo apache2ctl stop
sudo apache2ctl restart

Starten und Beenden von MySQL:

sudo /etc/init.d/mysqld start
sudo /etc/init.d/mysqld restart
sudo /etc/init.d/mysqld stop

Sonstige Konfigurations Dateien:

/etc/php5/apache2/php.ini
/etc/phpmyadmin/config.inc.php

Noch ein paar Tipps zu MySQL und Limits:

MySQL Server von aussen erreichbar machen
Einfach in der Datei /etc/mysql/my.cnf “bind 127.0.0.1″ auskommentieren und den MySQL Server mit (sudo /etc/ init.d/mysqld restart” neustarten.

Maximales Uploadlimit von PHP erhöhen
Standardmäßig erlaubt PHP einen Upload von Dateien mit einer Größe von nur 8 MB. Dies kann einfach unter /etc/php5/ apache2/php.ini geändert werden. Einfach nach den Zeilen “max_upload_filesize” und “max_post_size” suchen und dort die gewünschte Größe eingeben.

Beachte, dass Größere Dateien auch länger zum hochladen benötigen. Hier ist jedoch auch ein Standart-Limit von 60 Sekunden von PHP gesetzt. Einfach die Zeile max_execution_time suchen und eine höhere Zeit bestimmen (3600 für 1 Stunde zB).