1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

url "zerstört" sich nach linkbenutzung

Dieses Thema im Forum "Konfiguration" wurde erstellt von monki, 21. März 2008.

  1. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Hallo zusammen.

    Ich habe meinen Blog mit der domain dibtych verlinkt. wenn diese adresse in den Browser eingegeben wird, so funktioniert auch alles. Auch auf meinen Sitehoster steht, dass die domain in das hauptverzeichnis meiner Seite zeigt. mein Problem ist, dass wenn ich einen link - z.B. auf einen einzelnen eintrag oder auf eine andere Seite - in meinem Blog benutze, erscheint in der Adressleiste nicht mehr dibtych sonder die adresse, die von meinen webspace-anbieter für mich zur verfügung gestellt wird. auch das skript in meinen design, dass angemeldete user sich abmelden oder auf ihr profil zugreifen können, oder nicht registrierte user sich anmelden können funktioniert nicht auf der Hauptseite, sondern nur auf den seiten mit der unschönen url (das liegt aber glaub ich in dem Fall an den gesetzten cookie). Die einzelnen beiträge lassen sich jedoch sowohl mit der unschönen als auch mit der schönen adresse erreichen (das ging auch schon, als ich die permalink-einstellungen noch nicht geändert hab - heist: als seiten noch mit ?p=n angegeben wurden)
    Ich habe in wordpress unter einstellungen eine option gefunden, mit der ich die blog und die wordpress url ändern kann. Da steht im moment auch die unschöne adresse von meinem Provider drinn. Wenn ich beide in die schöne adresse ändere, meldet firefox, das sich die adresse in einer unendlichen schleife befindet und daher nicht erreichbar ist. Wenn ich nur die blog url ändere, verlinkt der jedoch immernoch auf die falsche url und ich komm nicht mehr in den wp-admin-bereich (nach dem login-fenster kommt nur noch eine weiße seite).

    hat jemand von euch eine idee woran das liegen könnte? Gibt es dafür schon eine lösung?
     
  2. Ammaletu

    Ammaletu Well-Known Member
    Ehrenmitglied

    Registriert seit:
    14. Juli 2007
    Beiträge:
    4.696
    Zustimmungen:
    0
    WordPress möchte, dass Du Dich für eine Adresse entscheidest, die im Backend eingetragen ist. Alle Links, die WP baut, benutzen dann diese Adresse. Da muss also eine Domain drinstehen, unter der die Seite auch tatsächlich zu erreichen ist.

    Wenn Du da die kurze Domain einträgst und es dann zu einer Endlosschleife kommt, wäre es natürlich gut zu wissen, wie diese Schleife aussieht. Schau das doch bitte mal nach, z.B. mit der FF-Erweiterung "Live HTTP headers".
     
  3. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Sorry, dass ich mich so spät erst wieder melde. Ich hatte ein bisschen viel um die Ohren in letzter Zeit.

    Ich hab das mit den PHP-Headern gemacht Es Folgen TXT-Dateien mit den jeweiligen Ergebnissen (Für das Hauptfenster und den Generator):

    http://dibtych.de.dd15430.kasserver.com/wp-content/uploads/2008/04/mit-kurze-domain.txt (wenn ich als URL http://www.dibtych.de angebe)
    http://dibtych.de.dd15430.kasserver.com/wp-content/uploads/2008/04/mit-kurze-domain-generator.txt (wenn ich als URL http://dibtych.de angebe - Generator)
    http://dibtych.de.dd15430.kasserver.com/wp-content/uploads/2008/04/ohne-kurze-domain.txt (wenn ich als URL http://dibtych.dd15430.kasserver.com angebe)
    http://dibtych.de.dd15430.kasserver.com/wp-content/uploads/2008/04/ohne-kurze-domain-generator.txt (wenn ich als URL http://dibtych.dd15430.kasserver.com. angebe - Generator)

    Das merkwürdige ist übrigens, dass mein Blog mit der Kurzen Domain erreichbar ist - auch die Dateien sind so erreichbar (Beispiel: http://www.dibtych.de/wp-content/uploads/2008/04/ohne-kurze-domain-generator.txt) - nur wenn ich die URL in Wordpress ändere, damit er die Links umschreibt, läuft das in diese Endlosschleife. Das Admin-Portal läuft dann allerdings noch und ich kann die einstellungen rückgängig machen. In der Adresszeile wird mir dann auch ordnungsgemäß "www.dibtych.de/wp-admin/" angezeigt statt "dibtych.de.dd15430.kasserver.com/wp-admin/"

    Ich wäre euch um eure Hilfe sehr dankbar. Ich habe nämlich keine gescheite Idee mehr dazu. Mit dem Auslesen der HTTP-Header kenn ich mich leider auch nicht aus.
     
  4. Ammaletu

    Ammaletu Well-Known Member
    Ehrenmitglied

    Registriert seit:
    14. Juli 2007
    Beiträge:
    4.696
    Zustimmungen:
    0
    Also ich würde vermuten, und das ist auch nur eine nicht speziell untermauerte Vermutung, dass das mit der Art zusammenhängt, wie die Domain auf Deinen Webspace geschaltet ist. In der ersten geposteten Textdatei, wenn Du also die kurze Domain in WordPress einträgst, kommt es ja zu einer Endlosschleife: Du rufst dibtych auf und bekommst eine Weiterleitung auf dibtych geschickt. Das könnte ich mir so erklären, dass Dein Server intern den Request auf die lange Domain, unter welcher Dein Webspace erreichbar ist, weiterleitet. Von dieser Weiterleitung würdest Du theoretisch nach außen erstmal nichts mitkriegen, aber intern kriegt WordPress die lange URL zu sehen und löst dann, weil das ja nicht die eingetragene Domain ist, den Redirect aus.

    Wenn es das ist müsstest Du vermutlich mal mit Deinem Hoster abklären, was genau da schiefläuft und wie es zu beheben ist. Wende Dich damit einfach mal an deren Support, würde ich sagen.
     
  5. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Wie sieht eigentlich die .htaccess-Datei aus? Falls hier z.B. eine Weiterleitung drinsteht, die nicht der konfigurierten Blog-Adresse entspricht, gibt es eine Endlos-Umleitung.

    Gruß
    Ingo
     
  6. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Die .htaccess liefer folgendes:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Ich habe die Permalinks angepasst, aber auch vorher gab es schon das Problem - selbst als die .htaccess noch nicht existierte und Wordpress keine Rechte hatte diese zu beschreiben oder zu erstellen.
     
  7. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Mal davon abgesehen, daß das Permalink-Zeug zweimal drin steht, kann ich nichts verdächtiges sehen.
    Das Problem dürfte eher die Weiterleitung von United-Domains zu All-Inkl sein. Diese erfolgt zumindest nicht auf DNS-Basis, denn der Hostname wird zu 89.31.143.1 aufgelöst, muß aber auf die Serveradresse bei all-inkl Zeigen (85.13.136.179).
    So wie es jetzt konfiguriert ist, kann es nichts werden.

    Gruß
    Ingo
     
  8. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Nachdem mir heute Nacht diese United-Domains URL-Hiding-Weiterleitung aufgegangen ist, sehe ich doch noch Chancen, das Problem zu lösen.
    1. Im UD-CONFIG-Menü für die Weiterleitung nicht den Hostnamen dibtych.dd15430.kasserver.com, sondern die IP-Adresse 85.13.136.179 eintragen. Dann die Blog- und die Wordpress-URL direkt in der Datenbank auf http://www.dibtyhc.de ändern.

      oder
    2. Das Plugin 123 Disable Canonical Redirect installieren und aktivieren. Dann die Blog- und die Wordpress-URL direkt in der Datenbank auf http://www.dibtyhc.de ändern.
    Die erste Variante wäre aus meiner Sicht die bessere, so sie funktioniert.
    Viel Erfolg!

    Gruß
    Ingo
     
    #8 Putzlowitsch, 10. April 2008
    Zuletzt bearbeitet: 10. April 2008
  9. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Danke das Plugin hats total gebracht.

    Nur wenn ich comments poste bleibt die Seite danach weis. Auch bei der Anmeldung bleibt sie erstmal weis. Ein renew der Seite liefert dann aber das richtige Ergebnis. Wäre schön, wenn wir das Problem auch noch irgendwie gelöst bekommen.

    EDIT: Ich denke das Problem ist, dass das wp_redirect in einigen Scripten, wie in wp-comments-post.php benötigt wird um die Seite nach der bearbeitung der Anfrage wieder auf die korrekte seite zu leiten. Die frage ist, wie kann man per Plugin feststellen, ob man sich momentan in dem jeweiligen script befindet um einen entsprechenden switch einzubauen. Oder:was meine eigentliche vermutung ist: das wp_redirect wird irgendwo falsch aufgerufen, was den loop zur folge hat. Die frage ist, wo wird es falsch aufgerufen und wie kann man es unterbinden?

    Post-EDIT: Die Sache mit der ip-adresse kann ich erst heute abend ausprobieren, da ich mittlerweile auf den Server eines Freundes umgezogen bin, und ihn erst heut abend erreichen kann wegen der ip. Das problem mit den loop entstand aber auch auf dessen Server.
     
    #9 monki, 16. April 2008
    Zuletzt bearbeitet: 16. April 2008
  10. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Das dürfte wahrscheinlich nicht zu beheben sein. Es liegt daran, wie bei United-Domains die Domainumleitung funktioniert, nämlich etwa wie ein Proxy (wenn ich das richtig verstanden habe).
    Der Nutzer ruft Deine Seite bei UD ab, dieser stellt die Anfrage selbst bei der Zielseite und gibt den Inhalt direkt zurück. Dadurch gehen vermutlich die Redirects beim Kommentar und Login verloren.
    Ich nehme auch an, das im Logfile bei All-Inkl fast ausschließlich die IP des UD-Servers (89.31.143.1) steht, das würde die Proxytheorie bestätigen.

    Gruß
    Ingo
     
  11. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Naja, so wie ich das sehe wird am ende der wp-comments-post.php ein wp_redirect auf die Seite ausgefürt, von der der comment gepostet wurde. Somit wird sichergestellt, dass man bei Aktivierung des Refresh-Buttons des Browsers oder der F5-Taste die Daten nicht nochmal an die Blog-engine schickt. Daher ist wp_redirect richtig und auch wichtig an der Stelle.
    Das war der Grund zu meinem Ansatz zum selektiven redirect. Ich forsche mal noch etwas weiter nach... mal sehen, ob sich das Problem nicht irgendwie vernünftig lösen lässt. Im moment benutze ich das Plugin AJAX Comments, wodurch der User nicht in die wp-comments-post.php muss und der entstandene Post ja nur per Javascript nachgeladen wird. Aber eine Wirkliche Lösung ist das auch nicht.

    Edit zu der IP:
     
    #11 monki, 16. April 2008
    Zuletzt bearbeitet: 17. April 2008
  12. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Meine Idee mit der IP-Adresse des Zielservers beruht auf der Annahme, das damit der Hostname der Zielseite im Request vom UD-Server durchgereicht wird. Damit ist für WP auf dem Zeilserver alles in Ordnung und es kommt nicht zum Redirect wie bei der Angabe einer Zieldomain. Somit würde man auch das oben erwähnte Plugin nicht benötigen. Vorausgesetzt, das auf den Zielserver der Dein Host korrekt konfiguriert ist.

    Soweit zur Theorie, ob das in der Praxis auch funktioniert, kann ich nicht beurteilen :)

    Was war denn eigentlich der Grund, vom all-inkl wegzugehen? Da kann man doch problemlos externe Domains auf den Webspace aufschalten.

    Meine putzlowitsch-Seite funktioniert auch so, Domain liegt bei 1&1, Webspace nutze ich bei all-inkl.

    Gruß
    Ingo
     
  13. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Der all-inkl-Webspace war nur ein Unteraccount von meinem Bruder. Um sein Serverplatz nicht alzusehr zu belegen und weil ehr php nicht auf version 5 aufstocken wollte, bin ich zu nen freund gewechselt, der mir auf seinen Server, bei dem ich mir beliebig viele services und so wünschen darf ;), einen Unteraccount gegeben hat. (Insgeheim hab ich auch gehofft, dass das Problem mit der Weiterleitung verschwindet)

    ABER: Ich glaube ich habe die Lösung für das Problem gefunden: Die Funktion canonical_redirect erzwingt nämlich den Port 80. Und genau da lagen meine Accounts auf den Webservern ja bisher nicht. Die wurden nämlich bisher auf einen anderen Port gelagert. ich denke da liegt das Problem.
    Ich werde heute abend die canonical.php dementsprechend verändern ein einfaches
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    vor die Zeile 48 (In WP 2.5 DE) dürfte das Problem vorerst ausschalten.

    Da du dich mit Plugins etwas auskennst hab ich noch ne frage: kann man daraus vielleicht ein plugin basteln um technisch unversierte user diesen bugfix bereit zu stellen?

    Ich werde das aber heut abend erst testen. Ich berichte dann über die Richtigkeit meiner Annahme ;)
     
  14. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Nein, nein, mit Port 80 hat das nichts zu tun. Es liegt einfach an der Konfiguration des Zielservers und an der Art und Weise, wie United-Domains eine Weiterleitung realisiert. Wenn jemand Deine Seite aufruft, passiert folgendes:
    1. Der Browser erstellt einen HTTP-Request-Header der so beginnt:
      Code:
      Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    2. Der Browser ermittelt die IP Adresse für www.dibtych.de, bekommt 89.31.143.1 (Server bei United Domains)
    3. Der Browser schickt den Request an den Server bei United Domains
    4. Der Server bei UD schaut in seine Konfiguration und stellt fest, das die Domain per URL-Hiding auf eine andere Domain (mmeier.msnetworks.de) umgeleitet werden soll.
    5. Der UD-Server ermittelt die IP Adresse für mmeier.msnetworks.de und bekommt 87.230.27.194 zurück
    6. Der UD-Server schickt den Request mit geändertem Host an den Zielserver:
      Code:
      Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    7. Der Request kommt bei mmeier.msnetworks.de an und wird von Wordpress verarbeitet
    8. WP stellt fest, daß bei der Blog-Adresse als Host www.dibtych.de eingestellt ist, der Request aber mit mmeier.msnetworks.de reinkommt und antwortet deshalb mit einem Redirect 301 auf www.dibtych.de
    9. Dann geht wieder alles von vorne los :)
    Um dieses Redirect-Problem zu lösen, muß zunächst im Webserver des Freundes ein virtueller Host für www.dibtych.de eingerichtet werden. Dieser zeigt dann auf den Webspace, wo Dein Blog liegt.
    Zudem muß bei UD die Weiterleitung nicht auf einen Hostnamen, sondern eben auf die IP Adresse 87.230.27.194 erfolgen. Ich gehe davon aus, daß dann im Request der Host nicht bei der Weiterleitung geändert wird. Kann ja auch gar nicht geändert werden, woher soll UD bei einer IP-Adresse den Hostname kennen.
    Irgendwelche komplizierte Konfigurationen mit Portadressen sind überhaupt nicht erforderlich.

    Vielleicht liege ich ja auch völlig falsch mit meinen Annahmen über die UD-Weiterleitung und Serverkonfiguration, dann vergiß es einfach :)

    Gruß
    Ingo
     
  15. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Aber auf der IP 87.230.27.194 liegt ja die Hauptseine meines Hosters nämlich MSNetworks. Wenn ich dahin in UD verlinke, bekomme ich nur dessen seite wieder.
    Der Unteraccount wird ja durch einen anderen Port gegeben.

    mmeier.msnetworks.de ist zwar auf der selben IP zu ereeichen, aber unter einem anderen Port.
     
  16. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Genau das ist auch der Punkt, warum es nicht gehen kann.

    Wieso muß der Unteraccount auf einem anderen Port liegen. Ein Account wird normalerweise im Webserver als virtueller Host konfiguriert. Am Host-Eintrag im Request-Header kann der Webserver entscheiden, für welchen User/Account/Webspacer der Request gedacht ist und den dorthin leiten. Da braucht man keinen anderen Port, das geht wunderbar über den Standard-HTTP-Port 80.
    Milliarden von Webseiten beim Shared-Webhosting funktionieren so, da hat auch nicht jeder seinen Port.

    Wie ich oben schon geschrieben hatte, Dein Webhoster muß nur einen virtuellen Host für www.dibtych.de anlegen und auf Deinen Webspace zeigen lassen.
    "... zu nen freund gewechselt, der mir auf seinen Server, bei dem ich mir beliebig viele services und so wünschen darf..."
    Sollte also kein Problem sein :)

    Nachtrag: Ich weiß ja nicht, was für ein Paket Du bei United-Domains hast, aber laut Feature-Liste für Domains soll man wohl auch die DNS-Einträge konfigurieren können (der vorletzte Punkt bei Domain-Features). Das wäre natürlich die beste Variante.

    Gruß
    Ingo
     
    #16 Putzlowitsch, 17. April 2008
    Zuletzt bearbeitet: 17. April 2008
  17. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Ich hatte jetzt einen CNAME-Eintrag vorgenommen. Der Eintrag lautete mmeier.msnetworks.de. Der führte nach einen redirect allerdings - wie ich vorhergesagt habe - auf msnetworks.de. Also werd ich doch das mit der Portunterdrückung versuchen.
     
  18. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Ich meinte auch mit bester Variante die DNS-Konfiguration und die Einrichtung des virtuellen Hosts beim Webhoster. Nur mit DNS alleine klappt es natürlich nicht.

    Wenn mit DNS, dann mit A-Record und nicht mit CNAME, also wird als A-Record für www.dibtych.de die IP 87.230.27.194 eingetragen.

    Gruß
    Ingo
     
  19. monki

    monki Active Member

    Registriert seit:
    30. Oktober 2007
    Beiträge:
    26
    Zustimmungen:
    0
    Danke für die Tipps. Es hat zum Schluss geklappt.

    Allerdings hat es auch mit der von mir beschriebenen Portunterdrückung geklappt. Deine Lösung ist aber natürlich durchaus sauberer.

    Vielen Dank für die Hilfe.
     
  20. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Es gibt oft mehrere Lösungen für ein Problem, hängt immer von der Herangehensweise ab.
    Hauptsache es funktioniert nun.

    Gruß
    Ingo
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden