Parralels Default Site überschreibt mod_rewrite?

Wie wir alle wissen (sollten) ändert mod_rewrite keine Links im Script. Damit auch die Links auf Deiner Page auf die neuen "Rewrited URLs" zeigen bedarf es der Anpassung im Code. Fragen und Probleme rund um's Coding werden hier diskutiert.

Moderator: Super-Mod

Parralels Default Site überschreibt mod_rewrite?

Beitragvon isrobot » 25.07.2010 14:56

Hi mod_rewrite-Forum,
nach tagelanger Suche über google etc bin ich auf das Forum hier gestoßen.
Allerdings konnte ich durchs Lesen der Beiträge keine Lösung für mein Problem finden.

Folgender Sachstand:
-Ich habe einen vServer, bei dem ich sichergestellt habe dass mod_rewrite an ist
-Darauf eine Domain http://www.domain.tld

Ich möchte:
-dass wenn http://www.domain.tld eingegeben wird das Hauptverzeichnis / geöffnet wird

-dass wenn man domain.tld eingibt ebenfalls das Hauptverzeiuchnis / geöffnet wird
    Derzeitiger Code:
    Code: Alles auswählen
    RewriteCond %{HTTP_HOST} !^domain.tld?www.domain.tld$ [NC]
-dass Userpages erstellt werden können die als Subdomains angezeigt werden
    Derzeitiger Code:
    Code: Alles auswählen
    RewriteCond ^(.*+).domain.tld/(.*)$ site.php?user=%1&page=%2

Als Beispiel:

Peter erstellt sich eine Internetseite auf der Plattform: http://peter.domain.tld , die als /site.php?user=peter erscheint
Peter hat die Unterseiten:
Startseite & Kontakt, die als
http://peter.domain.tld/ & http://peter.domain.tld/kontakt angezeigt wird und auf /site.php?user=peter&page=1 & /site.php?user=peter&page=kontakt verweist

Bei meinem derzeitigen vollständigen Code
Code: Alles auswählen
RewriteEngine On

RewriteCond %{HTTP_HOST} !^domain.tld?www.domain.tld$ [NC]
RewriteCond ^(.*+).domain.tld/(.*)$ site.php?user=%1&page=%2


wird beim Aufruf peter.domain.tld die Parralels Default Site angezeigt obwohl eigentlich auf site.php zugegriffen werden sollte.

site.php sieht wir folgt aus:(rein als test)
Code: Alles auswählen
<?php
if (!isset($_REQUEST['user'])){
   die('Direkter Aufruf dieser URL ('.$_SERVER['PHP_SELF'].') ist nicht erlaubt!');
}
if (!isset($_REQUEST['page'])){
   die('Direkter Aufruf dieser URL ('.$_SERVER['PHP_SELF'].') ist nicht erlaubt!');
}
else{
   echo'Dies ist die Seite '.$_REQUEST['page'].' des Benutzers "'.$_REQUEST['user'].'".';
}
?>

was normal ausgeben sollte: "Dies ist die Seite 1 des Benutzers Peter."

Mein Wissensstand seitens mod_rewrite ist rar gestrickt, demnach wäre es nett wenn mir da jemand auf die Sprünge helfen könnte.
LG
Sven
isrobot
.
.
 
Beiträge: 2
Registriert: 25.07.2010 14:18

Re: Parralels Default Site überschreibt mod_rewrite?

Beitragvon isrobot » 28.07.2010 22:12

Hey sorry aber wurde die Aktivität hier eingestellt?
Nur damit ich weiss ob ich auf eine Antwort hoffen kann...
isrobot
.
.
 
Beiträge: 2
Registriert: 25.07.2010 14:18

Re: Parralels Default Site überschreibt mod_rewrite?

Beitragvon Gumbo » 30.07.2010 11:14

Der Host kann nur wie in dem einen Fall gezeigt mit der „RewriteCond“-Direktive geprüft werden. In diesem Fall ist also beide Male RewriteCond zu verwenden:
Code: Alles auswählen
RewriteCond %{HTTP_HOST} !=www.example.com
RewriteCond %{HTTP_HOST} ^([^./]+)\.example\.com$
RewriteRule .* site.php?user=%1&page=$2
Markus Wulftange
Gumbo
Moderator
Moderator
 
Beiträge: 5019
Registriert: 07.01.2005 01:18
Wohnort: Trier


Zurück zu Programmierung & Scriptanpassung für mod_rewrite

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron