it-swarm.com.de

Wordpress Multisite im Unterverzeichnis, nicht root, und entfernen Sie den Basisordner aus der URL

Ich habe möglicherweise einen Lesefehler, kann aber keine Lösung für die folgenden Probleme finden: Ich möchte WordPress in einem Unterordner meines Verzeichnisses www installieren, sagen wir www/wp. Ich möchte dann zwei Blogs zum Multisite-Netzwerk mit den Namen foo und bar hinzufügen. Wenn ich das tue, erhalten sie die URL:

  • http://example.com/wp/foo
  • http://example.com/wp/bar

Ich möchte stattdessen, dass sie sich befinden in:

  • http://example.com/foo
  • http://example.com/bar

Aber Ich mache nicht Ich möchte eine WP Seite mit dem home/root:

  • http://example.com

Weil ich dort eine andere Anwendung laufen lassen werde (sonst würde ich einfach WordPress im Root installieren und fertig sein).

Wie konfiguriere ich das?

1
Chris

Installieren Sie WordPress in einem eigenen Verzeichnis . Befolgen Sie die Anweisungen auf dem angegebenen Link. Sie müssten zwei WP Dateien im Stammverzeichnis installieren - index.php und .htaccess. Diese können Ihre bestehende Website stören oder nicht.

1
user42826

Ich habe kürzlich versucht, dasselbe zu tun und eine Lösung gefunden, die für mich funktioniert.

Erstens, haben Sie Ihr Multisite-Setup in einem Unterverzeichnis:

  • www.mydomain.com/multi/
  • www.mydomain.com/multi/site1
  • www.mydomain.com/multi/site2

Zweitens fügen Sie ein Verzeichnis im Stammverzeichnis hinzu:

  • www.mydomain.com/site1

In diesem neu erstellten Verzeichnis (/ site1 /) können Sie einen .htaccess hinzufügen, um alle Anforderungen an die Multisite neu zu schreiben. Ich bin kein Experte in diesem Bereich, aber dieser Code hat für mich in der Datei .htaccess funktioniert:

RewriteEngine On RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(index\.php)$ /multi/$1   

RewriteRule ^(.*)$ /multi/$1

WordPress hat immer noch viele Verweise in der Datenbank auf Ihr Unterverzeichnis site1 . Als nächstes sollten Sie also alle Einträge in der Datenbank ändern. Sie können dieses Skript für diesen Zweck verwenden.

Jetzt sollte alles funktionieren und wenn Sie www.mydomain.com/site1 besuchen, sollten Sie Ihre Unterwebsite mit mehreren Standorten sehen. Das einzige Problem ist, dass Sie sich manchmal aufgrund von Konflikten mit Cookie-Domänen nicht anmelden können. Um dies zu beheben, löschen Sie alle Domain-Cookies (ich habe Chrome Dev Tools verwendet). Zweitens, füge diese Zeilen der wp-config.php-Datei hinzu:

define('ADMIN_COOKIE_PATH', '/'); 

define('COOKIE_DOMAIN', '');

define('COOKIEPATH', ''); 

define('SITECOOKIEPATH', '');

Hoffentlich funktioniert es für Sie.

1
andreboekhorst