Wartungsseite / Wartungsmodus über mod_rewrite definieren? Wartungsseiten in Magento

18. Mai 2012 at 14:18

Ihr möchtet eine Wartungsseite über mod_rewrite für verschiedene Hosts (Domains / Webseiten) und als Ausnahme z.B. das interne Firmennetzwerk definieren?

Hier die Lösung über mod_rewrite:

############################################
## Maintenance window
RewriteCond %{HTTP_HOST} ^domain1\.de$
RewriteCond %{HTTP:x-forwarded-for} !^192\.168\.0\.13$
RewriteCond %{REQUEST_URI} !^/media/ [NC]
RewriteRule .* tools/wartung/maintenance_page1.php [L]
RewriteCond %{HTTP_HOST} ^domain2\.de$
RewriteCond %{HTTP:x-forwarded-for} !^192\.168\.0\.13$
RewriteCond %{REQUEST_URI} !^/media/ [NC]
RewriteRule .* tools/wartung/maintenance_page2.php [L]
RewriteCond %{HTTP_HOST} ^domain3\.de$
RewriteCond %{HTTP:x-forwarded-for} !^192\.168\.0\.13$
RewriteCond %{REQUEST_URI} !^/media/ [NC]
RewriteRule .* tools/wartung/maintenance_page3.php [L]

 

Gleichseitig sollte auf der maintenance_page ein 503-Status-Code ausgegeben werden, z.B. mit folgender Seite:

<?php

<?php
ob_start();
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
header('Retry-After: 3600');
header('X-Powered-By:');
?><!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>503 Service Temporarily Unavailable</title>
</head><body>
<h1>Service Temporarily Unavailable</h1>
<p>The server is temporarily unable to service your
request due to maintenance downtime or capacity
problems. Please try again later.</p>
</body></html>

?>

Gefällt euch der Artikel? Dann bitte bewerten und bei Facebook & Google+ teilen!
Danke für euren Support!

php mail bzw. sendmail temporär umleiten zu dev/null – email versand unterbinden von php / sendmail

26. März 2012 at 17:59

Ihr möchtet den Versand von E-Mails durch php bzw. sendmail unterbinden?

Dafür gibt es verschiedene Möglichkeiten, z.B. könnt ihr ein alias einrichten, einfach in der Datei

/etc/aliases

ein bestimmten user eintragen sowie das Ziel, also:

bestimmteruser:         /dev/null

Alternativ in php den sendmail_path zu /dev/null umbiegen und auch den Port „umbiegen“.
Tragt hierzu am Anfang eures Scriptes (z.B. index.php) folgende Zeilen ein:

<?php
ini_set("sendmail_path", "/dev/null");
ini_set("smtp_port","26");
?>