Strict Standards: Declaration of action_plugin_dlcount::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/dlcount/action.php on line 14

Strict Standards: Declaration of action_plugin_indexmenu::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/indexmenu/action.php on line 169

Strict Standards: Declaration of action_plugin_ipban::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/ipban/action.php on line 67

Strict Standards: Declaration of action_plugin_loglog::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/loglog/action.php on line 82

Strict Standards: Declaration of action_plugin_navi::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/navi/action.php on line 46

Strict Standards: Declaration of action_plugin_uparrow::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/uparrow/action.php on line 69

Strict Standards: Declaration of action_plugin_userspagecreate::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/www/wiki/lib/plugins/userspagecreate/action.php on line 97

Strict Standards: Declaration of cache_instructions::retrieveCache() should be compatible with cache::retrieveCache($clean = true) in /home/www/wiki/inc/cache.php on line 289

Warning: Cannot modify header information - headers already sent by (output started at /home/www/wiki/lib/plugins/dlcount/action.php:14) in /home/www/wiki/inc/auth.php on line 312

Strict Standards: Only variables should be passed by reference in /home/www/wiki/doku.php on line 71

Warning: Cannot modify header information - headers already sent by (output started at /home/www/wiki/lib/plugins/dlcount/action.php:14) in /home/www/wiki/inc/actions.php on line 154
phpwcms mit mehreren Domains [phpwcms-HowTo:wiki]

Strict Standards: Declaration of syntax_plugin_code::render() should be compatible with DokuWiki_Syntax_Plugin::render($format, &$renderer, $data) in /home/www/wiki/lib/plugins/code/syntax.php on line 41

Strict Standards: Declaration of syntax_plugin_tip::render() should be compatible with DokuWiki_Syntax_Plugin::render($format, &$renderer, $data) in /home/www/wiki/lib/plugins/tip/syntax.php on line 38

phpwcms mit mehreren Domains

Aus Jörg Alblecht Blog:

“Das Content-Management-System phpwcms bringt von Hause aus keine Funktion für mehrere Domains mit. Wenn man das System auf einem Webspace-Paket installiert, welches mit mehreren Domains konnektiert ist, wird also standardmäßig unter jeder Domain der gleiche Inhalt angezeigt. Wenn eine Internetpräsenz über verschiedene Länder- und Sprachversionen verfügt, kann es jedoch wünschenswert sein, dass jede einzelne Domain direkt mit einer spezifischen Einstiegsseite beginnt.

Dazu ist lediglich der folgende kleine Workaround nötig.

1. Zunächst muss eine Datei angelegt werden, welche die verschiedenen Domains mit unterschiedlichen Inhaltsseiten verknüft. Ich nenne diese meist redirect.php.
2. In diese Datei kommt folgender Code, welcher angepasst werden muss und um beliebig viele Domains ergänzt werden kann.”

    <?php
 
        if ( $_SERVER[`SERVER_NAME`] == `www.domain1.tld` ) {
            header( "HTTP/1.1 301 Moved Permanently" );
            header(`Location: http://`. $_SERVER[`SERVER_NAME`] .`/index.php?inhalt1`);
        }
 
        if ( $_SERVER[`SERVER_NAME`] == `www.domain2.tld` ) {
            header( "HTTP/1.1 301 Moved Permanently" );
            header(`Location: http://`. $_SERVER[`SERVER_NAME`] .`/index.php?inhalt2`);
        }
 
    ?>


3. Damit die Datei “redirect.php” vor der “index.php” ausgeführt wird, muss in der ”.htaccess” noch folgende Zeit hinzugefügt werden:

DirectoryIndex redirect.php index.php


Das war es dann schon!


Zitat vom Mittwoch, 05.03.2008 aus: Jörg Alblecht Blog


Knut Heermann (flip-flop) 2011/03/13 08:57

phpwcms-Portal mit mehreren Domains [Website-in Website)

DIE IDEE:
Mit Hilfe von ein paar logischen Zusammenhängen, wird schnell klar, dass es möglich sein muss, mit Hilfe einer weiteren TLD
oder Subdomain bestimmte Teile der Website anzusteuern, ohne dafür ein komplettes neues System zu installieren.
Dass man diese Art der “Website in der Website” auch für mobile Nutzungen gebrauchen kann ist nicht sofort ersichtlich,
ergibt sich aber recht simpel aus folgender Überlegung:

  • Auf mobilen Geräten ist trotz der Flatrates der Datentransfer ein Nadelöhr, also ist weniger mehr!
  • Wir brauchen z.Bsp. nur folgende Infos: -Impressum/ -eMail/ -Telefonnummer/ -Standortbeschreibung/ -Öffnungszeiten/ -Kurzangebote-Leistungen

8-) Das war's schon. Und wenn man dafür nur ein “mobiles Layout” als Vorlage anlegt und in die entsprechenden Rubriken/ Menüpunkte
mit {SHOW_CONTENT Artikel aus dem Desktopbereich} hantiert, hat man neben seiner Desktopausführung schnell eine mobile Seite mit
einer einzigen Datenbank zusammen und funktionstüchtig. Es ist weniger Arbeit, als alles noch einmal mit einem separaten CMS zu erstellen.

Grundsätzlich sind alle normalen Server/ Hoster so konfiguriert, dass man mit einer TLD nur einen Ordner im Webspace ansteuern kann und
keine Sripte. Mit Hilfe der LEVEL-ID kann man eine Website wie folgt strukturieren

  HOME----------(0)
  ---WEB1-----------(1)
      Bereich1----(2)
      bereich2----(2)
      bereich3----(2)
  ---Web2 -----------(1)
      Bereich4----(2)
      bereich5----(2)
      bereich6----(2)  u.s.w.

Mit der TLD soll nun WEB1 oder WEB2 angesteuert werden, welche auch einen entsprechenden alias-Namen haben.
WEB1 und WEB2 werden/ können unterschiedliche Layouts und HTML-Vorlagen zugeordnet. Dadurch sieht WEB1 u.U.
vöiig anders aus als WEB2.

Der Lösungsansatz:

Voraussetzung für eine solche Lösung ist unbedingtes Einhalten einer LEVEL-ID-Struktur.
Ebenfalls braucht man eine Menüführung, die nur in diesem Level funktioniert und keine höheren Level ansteuert!
Ich habe dafür eine horizontale Menüführung modifiziert:

In der Vorlage wurde folgendes Installiert:

<div style="position:absolute; top:110px; right:0px;" id="menu_container">
{ NAV_HORIZ_DD:XXX,3 }
</div>

Die ID XXX ist der Beginn von einem ausgewählten Webbereich für eine bestimmte TLD.
Ebenso werden die anderen Menüs verwendet. Bis zu einer relativen Tiefe 3 werden die Menüs entsprechend angezeigt.

Ansteuerung durch TLD auf alias

Die gesamte phpWCMS-Konstruktion beginnt IMMER bei HOME (Level 0). Genau hier muss spätestens die Entscheidung fallen,
welche TLD wurde aufgerufen, wohin soll die Reise gehen?

Dafür habe ich ein kleines Script zusammengeschrieben, dass man in einen HTML-CP unter HOME ablegt, welches diese Fragen beantwortet:

[ PHP ]
$DomainName = strtolower($_SERVER['HTTP_HOST']);
// www. in Domainname nicht enthalten?
if (strpos($DomainName,'www.') === false)
{ $DomainName = "www.".$DomainName; }
switch($DomainName)
{
 
case 'www.MeineTLD1.de':
header( "HTTP/1.1 301 Moved Permanently" );
headerRedirect('/aliasTLD1.html');
break;
 
case 'www.lMeineTLD2.de':
header( "HTTP/1.1 301 Moved Permanently" );
headerRedirect('/aliasTLD2.phtml');
break;
 
default: .....
}
 
[ /PHP ]

Das geht natürlich auch mit obiger IF-Schleife - bei weniger Domainabfragen. In meinem Projekt werden aber z.Zt 15 TLD
abgefragt, so dass die Übersicht mir CASE besser ist. Wer es sicherer(?) haben will, macht mit ein paar Ergänzungen ein
“echtes” PHP-Script daraus und legt es unter:

\template\inc_script\frontend_render

ab. Wichtig: Suchmaschinen machen keine Zicken bei der gezielten Weiterleitung!

Aus "kukkis Spielwiese":

deutsch/andere-erweiterungen/mehrere-domains.txt · Last modified: 2012/10/31 16:03 by Burkhard Otto
www.planmatrix.de www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0

Strict Standards: Only variables should be passed by reference in /home/www/wiki/doku.php on line 79