Intereting Posts

WP-Admin не работает должным образом в WordPress multisite с подкаталогами

Недавно я установил многопользовательский блог WordPress в своем домене.

Все работает нормально, за исключением wpadmin подсайтов:

Я могу получить доступ к wp-admin дочернего сайта, но css не загружен, и когда я пытаюсь щелкнуть ссылку навигации, я получаю сообщение WordPress «Файл не найден».

Это связано с тем, что он ссылается на, например, domain.com/subsite/wp-admin/post-new.php – который не существует. (domain.com/wp-admin/post-new.php существует)

Я также думаю, что css не работает, domain.com/subsite/wp-admin/load-styles.php и load-scripts.php не могут быть найдены

Вот одна из ошибок, которые я получаю в инструментах разработчика Chrome при посещении / subsite / wp-admin

введите описание изображения здесь

Я использую стандартный .htaccess, который вставлен повсюду:

# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # uploaded files RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) 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).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] # END WordPress 

Думаю, ошибка должна быть здесь, верно?

Вот wp-config – на всякий случай:

 <?php define('WP_ALLOW_MULTISITE', true); // ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'XXX'); /** MySQL database username */ define('DB_USER', 'XXX'); /** MySQL database password */ define('DB_PASSWORD', 'XXX'); /** MySQL hostname */ define('DB_HOST', 'XXX'); /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8'); /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', ''); /**#@+ * Authentication Unique Keys and Salts. * * Change these to different unique phrases! * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. * * @since 2.6.0 */ define('AUTH_KEY', XXX); define('SECURE_AUTH_KEY',XXX); define('LOGGED_IN_KEY',XXX); define('NONCE_KEY', XXX); define('AUTH_SALT', XXX); define('SECURE_AUTH_SALT', XXX); define('LOGGED_IN_SALT', XXX); define('NONCE_SALT', XXX); /**#@-*/ /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'XXX'; /** * For developers: WordPress debugging mode. * * Change this to true to enable the display of notices during development. * It is strongly recommended that plugin and theme developers use WP_DEBUG * in their development environments. * * For information on other constants that can be used for debugging, * visit the Codex. * * @link https://codex.wordpress.org/Debugging_in_WordPress */ define('WP_DEBUG', false); define('MULTISITE', true); define('SUBDOMAIN_INSTALL', false); define('DOMAIN_CURRENT_SITE', 'mydomain.com'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1); /* That's all, stop editing! Happy blogging. */ /** Absolute path to the WordPress directory. */ if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); /** Sets up WordPress vars and included files. */ require_once(ABSPATH . 'wp-settings.php'); define( 'WP_ALLOW_MULTISITE', true ); define ('FS_METHOD', 'direct'); ?> 

Solutions Collecting From Web of "WP-Admin не работает должным образом в WordPress multisite с подкаталогами"

Если вы установили WordPress Multisite, начиная с версии 3.0 до 3.4.2, у вас есть правильное содержимое файла .htaccess .

Однако, если вы начали с более новой версии (3.5 или выше) – и я предполагаю, что вы это сделали, если вы недавно установили WordPress Multisite – ваш файл .htaccess должен выглядеть так:

 RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [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).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] 

Я предполагаю, что вы используете Multisite в режиме подпапки, так как в вашем вопросе ваш URL-адрес имеет форму example.com/site/wp-admin . ( Edit: Также я только заметил, что это определенно подпапка в вашем опубликованном файле wp-config.php .)

Подробнее см. На странице Codex на .htaccess .