• Hallo Ihr,

    ich habe eine remote Website auf einen lokalen Server (xampp unter Windows 10, Browser ist Firefox) übertragen und habe es noch nicht geschafft, alle Links umzustellen. Der Aufruf der Homepage (localhost/ABC) funktioniert, aber Aufrufe auf der Homepage landen immer im Control Panel von xampp. Beispielsweise führt der Link zur Seite Kontakt http://localhost/ABC/Kontakt nach localhost/dashboard. Der Aufruf localhost/ABC/wp-login.php mit anschließendem Login führt zum WP-Dashboard. Das Abmelden landet aber im Control Panel von xampp.

    Folgende Einstellungen sind vorhanden:

    1. Struktur im lokalen Server: c:\xampp\htdocs\ABC

    2. DB: siteurl und home -> http://localhost/ABC

    3. .htaccess

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    4. index.php

    <?php
    define('WP_USE_THEMES', true);
    require( dirname( __FILE__ ) . '/wp-blog-header.php' );

    Wenn sich aus diesen Angaben die Ursache für die Fehlleitung nicht ergibt, wie sollte ich beim Suchen vorgehen ?
    Vielleicht kann jemand auch so freundlich sein, mir (als gerade aus den Startlöchern gekommenen WP-newbie) unabhängig vom geschilderten Problem den Inhalt der .htaccess zu erklären. Mit den gegoogelten Infos komme ich nicht ganz klar.

    maksimilian

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren


  • Vielleicht kann jemand auch so freundlich sein, mir (als gerade aus den Startlöchern gekommenen WP-newbie) unabhängig vom geschilderten Problem den Inhalt der .htaccess zu erklären. Mit den gegoogelten Infos komme ich nicht ganz klar.

    maksimilian

    Auf den ersten Blick würde ich sagen, dass deine htaccess die Ursache des Problems ist.

    Erklären würde ich an dieser Stelle überspringen, weil diese Dinge wirklich hervorragend dokumentiert und über Google zu finden sind. Wenn du damit nicht viel anfangen könntest, wird dir meine Erklärung vermutlich auch nicht viel nützen.
    Das gute ist aber: Du musst sie gar nicht verstehen, denn WordPress erstellt eine "richtige" htaccess Datei von selbst. Dazu musst du nur auf Einstellungen/Permalinks gehen und dort auf Speichern klicken. Dabei wird dann auf Basis der home und siteurl Einstellungen eine neue htaccess erzeugt.

    Du wirst aber anschließend noch ein anderes Problem haben:
    WordPress speichert alle Pfade in der Datenbank als absolute Pfade. Das heißt, in der Datenbank sind überall die URLs deiner "Remote Website" (Ich vermute, dass meint einfach Website, die im Netz verfügbar ist?).
    Diese Pfade musst du in der Datenbank noch auf die neue URL ändern. Dazu gibt es hier im Forum schon etliche Threads, insofern schau mal in der Forum-Suche :-)


  • Das gute ist aber: Du musst sie gar nicht verstehen, denn WordPress erstellt eine "richtige" htaccess Datei von selbst. Dazu musst du nur auf Einstellungen/Permalinks gehen und dort auf Speichern klicken. Dabei wird dann auf Basis der home und siteurl Einstellungen eine neue htaccess erzeugt.


    Diesen Tipp hatte ich im Forum bereits gefunden. Nur: unter Einstellungen > Permalinks finde ich keine Funktion Speichern, oder bin ich blind. Ist "Änderungen übernehmen" gemeint ? Welche Änderungen dann ?

    Du wirst aber anschließend noch ein anderes Problem haben:
    WordPress speichert alle Pfade in der Datenbank als absolute Pfade.

    Wenn ich wüsste, wie der Pfadname (relativ zu root) aussehen muss, wäre das Ersetzen der Links in der DB kein Problem für mich.

  • Ist "Änderungen übernehmen" gemeint ?

    Ja genau. Ich hatte irgendwie im Kopf, dass das nur "speichern" steht. Aber ich habe gerade nochmal nachgeschaut und der Button heißt "Änderungen übernehmen".

    Welche Änderungen dann ?

    Der Button speichert Änderungen an der Permalink Struktur. Dazu schreibt er die htaccess Datei neu.
    In diesem Fall machst du natürlich keine Änderungen an der Struktur ansich, sondern "missbrauchst" die Funktion nur dazu, deine htaccess neu zu erzeugen (passend zu der neuen Umgebung).


    Wenn ich wüsste, wie der Pfadname (relativ zu root) aussehen muss, wäre das Ersetzen der Links in der DB kein Problem für mich.

    Wie AmFearLiath schon sagt: Eben nicht relativ, sondern absolut. Das heißt, du ersetzt im Prinzip die Domain und (falls vorhanden) den Teil des Pfads der immer gleich bleibt.

    In deinem Fall würdest du:
    "http://www.altedomain.de" ersetzen durch "http://localhost/ABC"

  • .htaccess auf die vorgeschlagene Weise erneuern, ändert nichts. Wenn ich beispielsweise ein neues Menü erzeuge, führt dessen Auswahl ebenso ins Control Panel von xampp. Stimmt da evtl. der Wert von home nicht ? Aber wie sollte der lauten ? Ins WP-Dashboard gelange ich ja.

    Wie funktioniert denn prinzipiell der Link zu einer im Theme konfigurierten Seite ? Z.B. http://localhost/ABC/Kontakt, wobei Kontakt eine Seite ist. Es gibt weder eine Datei noch ein Dateiverzeichnis mit dem Namen Kontakt. Irgenwo/wie muss doch der Name "Kontakt" zum Zugriff auf die Seite Kontakt führen.

    Ich kann hier keinen Link zur Homepage angeben, da sie ja auf dem lokalen Server liegt. Beim Theme handelt es sich um eine modifizierte Version des Themes Vantage Pro.

    PS Es gibt im Dateiverzeichnis xampp/htdocs ein zum Verzeichnis ABC paralleles Verzeichnis dashbord. Wenn im Browser localhost/dashboard aufgerufen wird, landet man im Control Panel von xampp. Ebenso mit localhost/ABC/dashboard.

    Einmal editiert, zuletzt von maksimilian (10. März 2017 um 20:42)


  • Wie funktioniert denn prinzipiell der Link zu einer im Theme konfigurierten Seite ? Z.B. http://localhost/ABC/Kontakt, wobei Kontakt eine Seite ist. Es gibt weder eine Datei noch ein Dateiverzeichnis mit dem Namen Kontakt. Irgenwo/wie muss doch der Name "Kontakt" zum Zugriff auf die Seite Kontakt führen.

    Genau das macht die htaccess.

    Wie sieht denn der aktuelle Inhalt deiner htaccess aktuell aus? Ist die wirklich neu erzeugt worden (ggf. Zeitstempel der Datei prüfen)?

    Jenachdem, wie du die Menüpunkte angelegt hast, kann es auch sein, dass der Link da absolut hinterlegt ist. Da du aber schreibst, dass das auch bei neuen Menüpunkten passiert, ist das eher unwahrscheinlich. Was steht denn unten links in deinem Browser, wenn du mit der Maus drüber gehst?

    Hast du die URLs in der Datenbank schon angepasst?

  • Genau das macht die htaccess.

    Wie sieht denn der aktuelle Inhalt deiner htaccess aktuell aus? Ist die wirklich neu erzeugt worden (ggf. Zeitstempel der Datei prüfen)?


    Die .htaccess sieht jetzt so aus. Datum von gestern.

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>


    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /asyl/
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /asyl/index.php [L]
    </IfModule>
    # END WordPress

    Jenachdem, wie du die Menüpunkte angelegt hast, kann es auch sein, dass der Link da absolut hinterlegt ist. Da du aber schreibst, dass das auch bei neuen Menüpunkten passiert, ist das eher unwahrscheinlich. Was steht denn unten links in deinem Browser, wenn du mit der Maus drüber gehst?


    localhost/ABC/Kontakt

    Hast du die URLs in der Datenbank schon angepasst?


    Ja, wie eingangs angegeben.

  • Die .htaccess ist fehlerhaft. Lösche die mal komplett, stelle die Permalinks auf Standard, speichern und anschließend auf Beitragsname, speichern

  • Die .htaccess ist fehlerhaft. Lösche die mal komplett, stelle die Permalinks auf Standard, speichern und anschließend auf Beitragsname, speichern


    Bei mir gibt es keine Auswahl "Standard". Der englischen Hilfe "default" entspricht "Einfach".

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!