Rekneh: .htaccess nur für eine Domain?

Hallo,

ich habe eine wohl ungewöhnliche Frage. Ich habe zwei Domains (beispiel.de und beispiel.com) die auf einen Host verweisen. Die .com Domain solle alle Anfragen (beispiel.com, beispiel.com/irgendetwas) per 301 auf die (beispiel.de,beispiel.de/irgendetwas).

Ich habe bisher nur : Redirect 301 http://www.domain.com/neuer-pfad/ http://www.domain.de/neuer-pfad/ gefunden, hierzu muss jeder einzele Pfad bekannt sein. Gibt es evt. eine Smarte variante?

Danke Rekneh

  1. Tach!

    Ich habe bisher nur : Redirect 301 http://www.domain.com/neuer-pfad/ http://www.domain.de/neuer-pfad/ gefunden, hierzu muss jeder einzele Pfad bekannt sein. Gibt es evt. eine Smarte variante?

    Man kann RewriteRule verwenden. Mit RewriteCond kann man Einschränkungen vornehmen, wann die Rule ziehen soll, und da kann man auch Hostnamen berücksichtigen.

    dedlfix.

    1. Äh sorry meinst du so ? Das scheint nicht zu laufen.

      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^\.domain\.com$ [NC]
      RewriteRule ^(.*)$ http://domain.de/$1 [L,R=301]
      
      1. Tach!

        Äh sorry meinst du so ?

        Prinzipiell ja.

        Das scheint nicht zu laufen.

        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^\.domain\.com$ [NC]
        RewriteRule ^(.*)$ http://domain.de/$1 [L,R=301]
        

        Wenn der Hostname exakt .domain.com lauten muss, wird das wohl auch nichts. Wenn er lediglich damit enden soll, musst du das ^ weglassen.

        dedlfix.

  2. Hello henkeR,

    ##Für Apache:

    • .htaccess arbeitet verzeichnisorientiert.
    • Die Domains werden mit ihren DocumentRoots ggf. in denselben Verzeichnisbaum mapped, aber nicht mit demselben Startpunkt.

    Wenn jetzt Überschneidungen stattfinden, müssen diese berücksichtigt werden und können zu 'interessanten' Effekten führen.

    Glück Auf
    Tom vom Berg

    --
    Es gibt nichts Gutes, außer man tut es!
    Das Leben selbst ist der Sinn.
  3. Weiterleitung ist immer schlecht. Wenn die Inhalte auf einundderselben Machine liegen dürfte es ja kein Problem sein die über einen gemeinsamen Serverprozeß auszuliefern. Und zwar so daß keine Umleitung erfolgt. Nicht vergessen, auf eine der Sites den kanonischen Link zu setzen.

    MFG

    1. Hello,

      Weiterleitung ist immer schlecht. Wenn die Inhalte auf einundderselben Machine liegen dürfte es ja kein Problem sein die über einen gemeinsamen Serverprozeß auszuliefern. Und zwar so daß keine Umleitung erfolgt. Nicht vergessen, auf eine der Sites den kanonischen Link zu setzen.

      Und woher soll der Client die geänderten Rahmen- und Protokollbedingungen erfahren?
      Innerhalb desselben Protokolls ist das ggf. noch sinnvoll, aber keinesfalls über Protokollgrenzen hinweg. Für Domains gilt Analoges. Wechsel der Domain bedeutet: zuvor Client (und damit auch Suchrobot) informieren!

      Glück Auf
      Tom vom Berg

      --
      Es gibt nichts Gutes, außer man tut es!
      Das Leben selbst ist der Sinn.
      1. Schonmal was von einem multidomainfähigem Framework gehört oder gelesen? Machbar ist das, ich habs doch auch geschafft! Guck Dir meine Domains an die laufen alle über einunddemselben Serverpozess.

        MFG

        1. Hello,

          Schonmal was von einem multidomainfähigem Framework gehört oder gelesen? Machbar ist das, ich habs doch auch geschafft! Guck Dir meine Domains an die laufen alle über einunddemselben Serverpozess.

          Benutzt Du denn nicht das HTTP/s-Protokoll für die Client-Server-Verbindungen?
          Wenn doch, kann es sich gar nicht um denselben Prozess handeln, bestenfalls um denselben Server i.e. Mutterprozess für die betroffenen Ports.

          Glück Auf
          Tom vom Berg

          --
          Es gibt nichts Gutes, außer man tut es!
          Das Leben selbst ist der Sinn.
          1. Umleitungen haben doch mit dem Protokoll nichts zu tun! MFG

            1. Hello RR,


              Umleitungen haben doch mit dem Protokoll nichts zu tun! MFG

              beschreibe die vier Varianten: interne/externe Umleitung/Weiterleitung.
              Da sollte dir dann schon einiges klar werden.

              Und selbstverständlich sind Protokolle und (Standard-)Ports relevant. Du kannst auf deinem Server die Requests zwar verwursten, wie Du willst, spätestens der/die Client(s) erwarten wieder protokollkonforme Responses.

              Glück Auf
              Tom vom Berg

              --
              Es gibt nichts Gutes, außer man tut es!
              Das Leben selbst ist der Sinn.
    2. Weiterleitung ist immer schlecht.

      Spätestens bei "leite http://example.org nach https://example.org weiter" ist diese Pauschalaussage falsch.

      1. Weiterleitung ist immer schlecht.

        Spätestens bei "leite http://example.org nach https://example.org weiter" ist diese Pauschalaussage falsch.

        Es kommt immer darauf an wie das gemacht wird. Eine auf HTTP erfolgte Anmeldung nach HTTPS umzuleiten ist auf jeden Fall ganz ganz schlecht und ein Sicherheitsproblem isses außerdem.

        MFG

        PS: Was mein Statement bez. Umleitung beetrifft: Wo ein Status 301 machbar ist, geht auch ein Status 200. Letzeres würde ich einer Umleitung immer vorziehen. Und von HTTP nach HTTPS würde ich überhaupt nicht umleiten. Und überhaupt gebe ich hier keine Empfehlungen ab sondern beschreibe nur wie ich das machen würde. Wer aus Fehlern was lernen will muss sie schon selber machen.

        1. Weiterleitung ist immer schlecht.

          Spätestens bei "leite http://example.org nach https://example.org weiter" ist diese Pauschalaussage falsch.

          Es kommt immer darauf an wie das gemacht wird.

          Es gibt nur wenige 3er Statuscodes, die sich dafür anbieten. 301 ist die beste Wahl, wenn man von http auf https leiten möchte.

          Eine auf HTTP erfolgte Anmeldung nach HTTPS umzuleiten ist auf jeden Fall ganz ganz schlecht und ein Sicherheitsproblem isses außerdem.

          Zum einen ging es darum nicht, zum anderen verstehe ich das Sicherheitsproblem nicht. Da die Anmeldung wohl hoffentlich via POST erfolgt, wird der Redirect eh scheitern. Das ist dann aber kein Sicherheitsproblem, sondern schlicht kaputt. Ist aber auch egal, denn die Frage stellt sich nicht, sofern man pauschal immer "https" macht. Best practice, nicht erst seit 2019. Es gibt Ausnahmen, aber auch darum geht es hier nicht.

          Was mein Statement bez. Umleitung beetrifft: Wo ein Status 301 machbar ist, geht auch ein Status 200. Letzeres würde ich einer Umleitung immer vorziehen.

          Wo ein 200 machbar ist, geht auch ein 500 oder 418! WTF!?

          Und von HTTP nach HTTPS würde ich überhaupt nicht umleiten.

          Musst Du ja auch nicht. Dein Bier (für rolfrost.de mangels gültigem Zertifikat eh witzlos). Manch andere haben da nur eine andere Einschätzung:

          http://www.amazon.de http://www.heise.de http://forum.selfhtml.org http://www.golem.de http://www.quelle.de http://www.youtube.com http://www.ebay.de http://stackoverflow.com [...]

          Aber klar. Den Leuten fehlt halt einfach Dein Durchblick!

          Und überhaupt gebe ich hier keine Empfehlungen ab sondern beschreibe nur wie ich das machen würde.

          Wenn Du "Weiterleitung ist immer schlecht" schreibst, dann IST das eine Empfehlung von Dir.

          1. Wo ein 200 machbar ist, geht auch ein 500 oder 418! WTF!?

            Natürlich. Du kannst jeden beliebigen Status ausgeben. Vorausgesetzt der Request kommt bei Dir an!

            MFG