Wrong plugin paths with WordPress Multisite on Windows
-
I’m working on a project where a WordPress network needs to be installed on a Windows box π
It’s the first time that I’m getting an error like this:
Warning: is_readable() [function.is-readable]: open_basedir restriction in effect. File(D:\xampp\apache\htdocs/wp-content/plugins/D:\xampp\apache\htdocs/wp-content/plugins/wordpress-importer/wordpress-importer-en_US.mo) is not within the allowed path(s): (D:\xampp\apache\htdocs\wp-content\plugins\;D:\xampp\apache\htdocs; D:\xampp\tmp;d:\xampp\php;D:\xampp\phpmyadmin) in D:\xampp\apache\htdocs\wp-includes\l10n.php on line 334
Apache got the path for the plugin wrong (the bold part). Is there any way I can fix this?
I did a test on the same server and verified that this problem doesn’t occur if it’s a regular install. The problem only exists for multisite installs.
I’m running multisite network on WP 3.2 development version (32-beta1-17999).
-
What version of IIS are you running?
Whoops, I forgot that bit. It’s actually running Apache via XAMPP. Here’s the phpinfo output: http://etpblog.pemandu.gov.my/phpinfo.php
Did you test on a 3.1.2 Multisite install? I want to rule out the 3.2 changes (which there are many).
Yes, I tested with a WP3.1.1 multisite install too. Same results:
Regular 3.1.2 / 3.2b install = no problems
Multisite 3.1.2 / 3.2b install = WordPress get’s the paths wrongAppreciate your time and advice ipstenu π
Did you update your .htaccess correctly?
Does it fail on both subdomain AND subfolder or just one?
Yes, I think my .htaccess is correct.
I only tested it on subfolder installs, I don’t need subdomain for this. In any case, I don’t have access to the virtual hosts so I can’t do subdomains on this windows box.
Does the rest of the site work okay? Or are you getting a css-less page?
I’m thinking the .htaccess isn’t being parsed correctly.
Spot check it against http://codex.wordpress.org/Create_A_Network#.htaccess_and_Mod_Rewrite
I do see mod_rewrite is on, but allowoverride may not be set to “all” in your httpd.conf
The rest of the site works ok. I only get the errors on certain pages. Also, most of the errors are paths leading to
.mo
files, mainly on the Installed Plugins pages. Other pages which the error appears on are certain plugin settings pages.I’m not sure how .htaccess could have anything to do with it. Here are the contents of my .htaccess file:
DirectoryIndex index.php # 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).*) $1 [L] RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L] RewriteRule . index.php [L] # END WordPress
The .htaccess parses domain.com/subsite/wp-content/whatever to domain.com/wp-content/whatever so in THAT it could do something weird.
It looks like it’s putting in
D:\xampp\apache\htdocs
twice… You don’t have that in the wp-config.php file do you?Nope, I don’t. Here are the only additions to the wp-config.php file:
// for Quick Cache define('WP_CACHE', true); // WordPress Multisite Network define( 'MULTISITE', true ); define( 'SUBDOMAIN_INSTALL', false ); $base = '/'; define( 'DOMAIN_CURRENT_SITE', 'etpblog.pemandu.gov.my' ); define( 'PATH_CURRENT_SITE', '/' ); define( 'SITE_ID_CURRENT_SITE', 1 ); define( 'BLOG_ID_CURRENT_SITE', 1 ); // Network-wide Akismet define('WPCOM_API_KEY','xxxxxxxxxx');
Other than that it’s the standard wp-config.php. Could the $base and PATH_CURRENT_SITE above be confusing WordPress?
I’m starting to think it’s a multisite bug..
More likely it’s a ‘your setup and Multisite’ bug (given how many people use it and this is the first I’ve seen this error… The odds are against you π )
OH! Is PHP SafeMode on?
open_basedir is set and that’s used by safemode.
In fact, it’s got
D:\xampp\apache\htdocs\wp-content\plugins\;D:\xampp\apache\htdocs;D:\xampp\tmp;d:\xampp\php;D:\xampp\phpmyadmin
which is odd… why would it have plugins in there?You’re right, it’s like the perfect storm.
I think safe_mode is on, though the phpinfo says otherwise. Then again I don’t really know how to read it properly.
All my files are contained in
D:/xampp/apache/htdocs
which is the correct place to be right?I often use the perfect storm explanation π Also with a ‘your server is a pretty, individual, snowflake.’
Check your php.ini and make sure it’s off. I believe the files are in the right place, though I don’t know why open_basedir has
D:\xampp\apache\htdocs\wp-content\plugins\;
in the front.
- The topic ‘Wrong plugin paths with WordPress Multisite on Windows’ is closed to new replies.