Langzeitlurker - Erstes Poster.
Ein Kunde von mir hat eine in CakePHP entwickelte Website und ein WordPress-Blog im Verzeichnis / blog / installiert.
Angenommen, die URL der Hauptdomain lautet http://www.realdomain.com
, wobei der Blog lautet http://www.realdomain.com/blog/
.
Sie haben kein eigenes SSL-Zertifikat und verwenden daher meine Unternehmen. Angenommen, die sichere URL lautethttps://realdomain.maindomain.net/blog/
Ich habe den folgenden Code in meiner Datei wp-config.php:
define('WP_SITEURL', 'https://realdomain.maindomain.net/blog');
define('WP_CONTENT_URL', 'http://www.realdomain.com/blog/wp-content');
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
Wenn ich zur Datei /wp-login.php gehe, werde ich zu der sicheren URL weitergeleitet, die perfekt ist.
Wenn ich mich jedoch bei der sicheren Site anmelde, versucht WordPress, JavaScripts und Stile von zu laden
`http**s**://realdomain.com`
Dies führt zu Problemen, da die Hauptwebsite kein SSL-Zertifikat hat und daher nichts von geladen wird https://realdomain.com
Fehlt mir noch etwas?
Ist die Lösung eine .htaccess-Regel? Eine Regel, die alle " https://realdomain.com
" an "https://realdomain.maindomain.com
"weiterleitete?
Ich bezahle jedem 20 Dollar, der mir helfen kann, das Problem zu beheben. Ich habe Google bis mein Herz zufrieden und ich weiß nicht, was ich sonst noch tun kann.
Vielen Dank!
Ich schlug meinen Kopf gegen die Wand und versuchte, die Verwaltungsfunktionen von WordPress auf einen separaten Server zu verschieben. Ich dachte, ich würde nur hinzufügen, dass zwei Hostnamen die "Vorschau" -Funktion im Editor beschädigen. Daher müssen Sie Ihren .htaccess ändern, damit dies wieder funktioniert.
quelle
WordPress erzwingt HTTPS für alle Assets, wenn das aktuelle Protokoll SSL ist. Ich nehme an,
realdomain.maindomain.net
ist ein Alias fürrealdomain.com
?Wenn ja, setzen Sie Ihre Inhalts-URL auf
http://realdomain.maindomain.net/blog/wp-content
.Alle Assets werden über diese URL bereitgestellt und bei Bedarf automatisch in HTTPS umgeschrieben.
Wenn Sie (aus welchem Grund auch immer) nur Inhalte aus der Alias-Domain innerhalb des Administrators bereitstellen möchten (dh über HTTPS), können Sie die Inhalts-URL bedingt ändern:
UPDATE: Versuchen Sie dies ohne die vorherigen Filter oder zusätzlichen Definitionen.
quelle
https://realdomain.maindomain.net
aber sobald Sie sich angemeldet haben, werden einige Inhalte von der richtigen Domain und dann von der falschen Domain abgerufen . i.imgur.com/pcIrO.png Hier ist ein Bild davon, was passiert (ignorieren Sie diese <br>, fügen Sie sie nur hinzu, um den Abstand für Sie zu gewährleisten ). Das Problem ist /wp-admin/load-scripts.php und / wp-includes / Ansonsten funktioniert es!WP_SITEURL
?add_filter( 'includes_url', 'use_alias_for_ssl' );
der MischungIch habe die Datei wp-config.php aktualisiert und WordPress MU ist nicht installiert. Deshalb habe ich den Ordner mu-plugins im Ordner / wp-content / erstellt. Ein paar Dinge sind passiert: Beim Betrachten der öffentlichen Seite wurden bestimmte Dateien von
https://realdomain.maindomain.net/blog
und einige von geladenhttp://realdomain.com
. So was:<script src="http://www.realdomain.com/blog/wp-content/plugins/commentluv/js/commentluv.js?ver=3.2.1" type="text/javascript">
<link href="https://realdomain.maindomain.net/blog/xmlrpc.php?rsd" title="RSD" type="application/rsd+xml" rel="EditURI">
<link href="https://realdomain.maindomain.net/blog/wp-includes/wlwmanifest.xml" type="application/wlwmanifest+xml" rel="wlwmanifest">
URLs und Miniaturansichten von Blogposts wurden jedoch korrekt verknüpft. Es waren nur 4 Dateien, die von der https: // Site abgerufen wurden
Auf der wp-Anmeldeseite war die Formular-URL https: // korrekt und die sichere Site wurde geladen. Ich habe jedoch nichts geändert. Es zieht immer noch 7
<script>
&<link>
Dateien aushttps://realdomain.com
.Die URLs
<forms>
aller POSTs zur richtigen https: // Site.Vielen Dank für all Ihre Hilfe, ich weiß das wirklich zu schätzen!
quelle
So aktivieren Sie den Administratorzugriff für http://blog.example.com über https://ssl.example.com/wp-admins/blog/wp-login.php mit reiner Apache-Konfiguration, dass Sie nicht von Wordpress-Plugins und -Updates abhängig sind Du möchtest vielleicht...
... verwenden Sie mod_proxy auf einem virtuellen HTTPS-Apache-Host, um den Datenverkehr weiterzuleiten. Stellen Sie sicher, dass ProxyPreserveHost deaktiviert ist, damit Hostnamen in den Proxy-Anweisungen an den WordPress-Server gesendet werden. Dann wird mod_substitute verwendet (stellen Sie sicher, dass es aktiviert ist), um die defekten Links zu beheben, die von WordPress zurückkommen.
Damit der Reverse-Proxy funktioniert, müssen Sie die interne IP des Servers angeben, auf dem blog.example.com gehostet wird. Diese Lösung stellt sicher, dass dies auch dann funktioniert, wenn der Upstream-Server (10.0.0.4) über mehrere namensbasierte virtuelle Hosts verfügt.
Weitere Einzelheiten finden Sie unter:
http://tec.libertar.se/how-to-host-wordpress-admin-on-a-seperate-domain-and-subfolder/
quelle