WordPress 3.5はサブディレクトリのコアファイルを扱うことになっているので、私は自分のローカル開発設定(サブディレクトリマルチサイト)をその設定に移すことにしました。
早送りと私が持っているものは次のとおりです。
wordpress
(3.5コア)
wp-content
(content dir、WP_CONTENT_DIR
とWP_CONTENT_URL
で設定)
.htaccess
と一緒に:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) C:\server\www\dev\wordpress/wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) C:\server\www\dev\wordpress/$2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ C:\server\www\dev\wordpress/$2 [L]
RewriteRule . index.php [L]
wp-config.php
と一緒に:
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'dev.rarst.net');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
index.php
と一緒に:
define('WP_USE_THEMES', true);
require('./wordpress/wp-blog-header.php');
状態:
/wordpress/wp-admin/network/
で働いていますが、すべてのリンクは/wp-admin/network/
を指すようにしていますが、The given path was above the root path: AH00127: Cannot map GET /wp-admin/network/ HTTP/1.1 to file
でForbidden
をエラーにしていますdev.rarst.net
で、adminはdev.rarst.net/wordpress/wp-admin
で動作しますdev.rarst.net/*
)はアップロードが壊れていて、adminやその他へのリンクがまだありません。一言で言えば - すべてをうまく動かすためには、ここからどの方向に移動する必要がありますか?
この設定ではどのような管理リンクが必要になりますか(コアは「実際の」サブディレクトリにあり、サイトは「仮想」サブディレクトリにあるため)。
あなたの.htaccess
行はこのように見える必要があります:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) /wordpress/wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) /wordpress/$2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ /wordpress/$2 [L]
RewriteRule . index.php [L]
.htaccessはドキュメントルート以外の場所にアクセスできないため、C:\server\www\dev\
のようなパスは失敗します。 (上記のコードは私のlocalhostマルチサイトインストールでテストされています)。
.htaccess
の書き換えにより、WP_CONFIG_DIR
とWP_CONFIG_URL
を設定する必要はありません。これらはWordPressによって計算されます。管理ページにはhttp://dev.rarst.net/wp-admin
またはhttp://dev.rarst.net/subsite/wp-admin
でアクセスできます。