Category: Allgemein

CoSchni#1: htaccess Domain immer mit www und SSL

Für eine einheitliches Tracking bzw. ein besseres Ranking in den Suchmaschinen ist es wichtig, das Inhalte nur unter einer Domain erreichbar sind, Stichwort: Duplicate Content und Canonical Tag. Daher sollte u.a. darauf geachtet werden, das die Inhalte nur mit www oder ohne www erreichbar sind. Für mehr Komfort werden die Parameter zudem automatisch wieder an die Domain angehängt.

[PHP]

# Immer mit www
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.de$ [NC]
RewriteRule ^(.*)$ https://www.example.de/$1 [R=301,L]

# Immer über SSL
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L]


[/PHP]

Letzteres kann man im TYPO3 CMS auch direkt aktivieren, jedoch hatte dies nicht gewünschten Erfolg bzw. kam es, glaube ich, zu einem Konflikt mit RealURL.

[random_content group_id=”211″ num_posts=”1″]

WordPress Update ohne FTP aktualisieren

Erst dachte ich, es würde an den Rechten des Dateisystems liegen, aber selbst nachdem ich der Gruppe und allen anderen Schreibrechten gegeben hatte, war kein Auto-Update möglich. Internet fand ich den Tipp den upgrade-Ordner in wp-content zu entfernen. Aber auch dies half nichts. Geholfen hat letztlich ein Eintrag in die wp-config.php:

[PHP]
define(‘FS_METHOD’,’direct’);
[/PHP]

Gefunden habe ich es hier: http://www.hongkiat.com/blog/update-wordpress-without-ftp/

Wie im Blog beschrieben habe ich den Code ganz unten eingefügt in der wp-config.php:

[PHP]
/* That’s all, stop editing! Happy blogging. */

if ( !defined(‘ABSPATH’) )
define(‘ABSPATH’, dirname(__FILE__) . ‘/’);
require_once(ABSPATH . ‘wp-settings.php’);

define(‘FS_METHOD’,’direct’);
[/PHP]

Wichtig: Vor jedem Update ein Backup von der Datenbank und den Dateien anfertigen.

Notiz: executable bit setzen und entfernen

Bevor ich es wieder vergesse, ein kleine Notiz wie das Executable Bit gesetzt und wieder entfernt wird:


// Executable Bit setzen:
chattr -i filename

// Executable Bit entfernen:
chattr -i filename

So einfach geht das ;-)

[Update] Wie im Kommentar richtig vermerkt, meinte ich das “Immutable Bit”, machte auch mehr Sinn, beim Parameter “i”

Googlebot can’t access your site

Derzeit sendet Google immer wieder Mails, dass der Googlebot Fehler bei indizieren von BugBlog.de hat. Für die Fehleranalyse habe ich per wget die komplette Seite heruntergeladen:

wget -m -o log.txt http://www.bugblog.de

Im Logfile findet sich folgender Eintrag:


--2012-08-21 13:44:27-- http://www.bugblog.de/javascript-java-script/java-tutorial-hibernate-mysql-xml/2008/11/23/
Verbindungsaufbau zu www.bugblog.de|78.47.220.180|:80... verbunden.
HTTP Anforderung gesendet, warte auf Antwort... 500 Internal Server Error
2012-08-21 13:44:27 FEHLER 500: Internal Server Error.

Auf der Seite erscheint eine Fehlermeldung:

Parse error: syntax error, unexpected T_STRING in htdocs/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 57

Dies verursacht zwar keinen 500 Error, jedoch ist die Ausgabe nicht gewollt. Um den Fehler zu beheben wird folgender Code ergänzt:

[php]
function eval_php($content)
{
// to be compatible with older PHP4 installations
// don’t use fancy ob_XXX shortcut functions
ob_start();
eval(“?>$contentParse error:’) !== false){
$output = $content;
}
// Ende

ob_end_clean();
return $output;
}
[/php]

Sphinx Search

Ein kleiner Notizzettel mit den wichtigsten Erkenntnissen und Befehlen für Sphinx:


// Starten
# /usr/local/bin/searchd

// Stoppen
# /usr/local/bin/searchd --stop

// Indizieren
# /usr/local/bin/indexer --all

// Config File
# vim /usr/local/etc/sphinx.conf