it-swarm.com.de

So vertreten Sie lokal WP Lädt den Ordner auf die Live-Site hoch

Stapel:

MAMP PRO unter OSX 10.11.5 (El Cap)

Szenario:

Ich entwickle eine Site lokal und es ist bereits eine Live-Version der Site online. Anstatt alle 4 GB des Ordners uploads herunterzuladen, möchte ich, dass meine lokale Site stattdessen nur die Bilder von der Live-URL lädt.

Konzept:

Durch viele Suchvorgänge habe ich viele Variationen von .haccess-Dateien gefunden, mit denen Sie dies erreichen können. Meine Favoriten verwenden die folgenden Bedingungen:

  1. Überprüft zuerst, ob Sie sich auf dem Entwickler-Server befinden (HTTP_Host)
  2. Überprüft, ob die angeforderte URL in wp-content/uploads enthalten ist (REQUEST_URI)
  3. Überprüft, ob die angeforderte URL lokal nicht existiert (Datei oder Verzeichnis über REQUEST_FILENAME)
  4. Wenn diese erfolgreich sind, führen Sie die Umschreiberegel aus.

Code:

Hier ist mein .htaccess Schnipsel:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /wp-content/uploads/
  RewriteCond %{HTTP_Host} ^LOCALSITE\.dev$ [NC]
  RewriteCond %{REQUEST_URI} ^/wp-content/uploads/
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ http://LIVESITE.com/wp-content/uploads/$1 [NC,P]
</IfModule>

FÜR DAS LEBEN VON MIR KANN ICH DIES NICHT RICHTIG ARBEITEN

Ich habe so viele Tests durchgeführt, wie ich mir vorstellen kann, und habe überprüft, dass mod_rewriteONin MAMP ist. Ich habe mehr htaccess-Dokumentation gelesen, die mir wichtig ist, und jetzt gehe ich im Kreis.

Prüfung:

Einer meiner Tests lässt mich verwirrt. Folgendes habe ich getan:

  1. Erstellen Sie eine Seite in WordPress mit 2 Bildern im Inhalt.
    • "Image A" existiert nur auf meinem lokalen Rechner
    • "Image B" ist nur auf der LIVE-Site vorhanden, verwendet jedoch meinen lokalen Hostnamen in der URL
  2. Bild A wird angezeigt, Bild B erhält einen 404-Fehler (wie erwartet)
  3. Fügen Sie das .htaccess-Snippet nach WordPress-Inhalten hinzu
  4. Nichts verändert sich
  5. Wenn ich jedoch alle RewriteCond -Anweisungen auskommentiere, ist Image A 404 die einzige, die tatsächlich mit der LIVE-URL umgeschrieben wird. Es existiert dort nicht, also ja, es ist 404. Aber die URL von Bild B wurde nicht umgeschrieben und es ist auch 404.

Haftungsausschluss: Es ist 4 Uhr morgens

Jede Hilfe ist dankbar, danke.

1
William

Also fand ich die Antwort, nachdem ich meine Frage gelesen hatte, nachdem ich sie gepostet hatte ...

Die HTAccess-Regeln müssen vor den WordPress-Regeln gehen

Hier hast du es. Das war die ganze Zeit das Problem.

Ich gehe ins Bett.

3
William