• I built a new windows server, installed IIS (version 6), MySQL (latest build as of yesterday), PHP using FastCGI (latest build as of yesterday), and also installed an ISAPI Rewrite module to replace the .htaccess with a web.config and allow proper URL rewriting.

    Installed WordPress, created the database, set my pretty links, etc. Enabled MultiSite, went through that process successfully (using sub-directory mode). Everything appears to be working, can create sites, users, etc. Can view the sub-directory sites without any issues.

    The problem arises when a user tries to log in to their site. When they are viewing their site (ex: webblog.com/user1) and click the “Log In” link, it takes them to webblog.com/wp-login.php instead of webblog.com/user1/wp-login.php. That might not be an issue, but whether you go to the first or the second URL listed above, the result is the same; after entering in the correct user1 information to log in, you get the error “You don’t have permission to view this site. Please contact the system administrator.”

    I have adjusted the permissions on the wp-content folder to allow the iusr (internet guest account used with IIS) user read, write, modify permissions on the folder and all subfolders and files, but that did not help. I also saw a post on the web about changing the “wp_capabilities” entry in the table “wp_usermeta” to be:
    a:1:{s:13:"administrator";b:1;}
    instead of what was there:
    a:1:{s:13:"administrator";s:1:"1";}
    That didn’t help either.

    I am including my web.access file as well as the code that WP wanted me to place into the .htaccess file. It is possible that I messed up my web.config file. Any help would be greatly appreciated. I should also note that my default “admin” user works perfectly; no issues with it.

    web.config:

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <rewrite>
                <rules>
                    <rule name="WordPress Rule 1" stopProcessing="true">
                        <match url="^index\.php$" ignoreCase="false" />
                        <action type="None" />
                    </rule>
                    <rule name="WordPress Rule 2" stopProcessing="true">
                        <match url="^([_0-9a-zA-Z-]+/)?files/(.+)" ignoreCase="false" />
                        <action type="Rewrite" url="wp-includes/ms-files.php?file={R:2}" appendQueryString="false" />
                    </rule>
                    <rule name="WordPress Rule 3" stopProcessing="true">
                        <match url="^([_0-9a-zA-Z-]+/)?wp-admin$" ignoreCase="false" />
                        <action type="Redirect" url="{R:1}wp-admin/" redirectType="Permanent" />
                    </rule>
                    <rule name="WordPress Rule 4" stopProcessing="true">
                        <match url="^" ignoreCase="false" />
                        <conditions logicalGrouping="MatchAny">
                            <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" />
                            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" />
                        </conditions>
                        <action type="None" />
                    </rule>
                    <rule name="WordPress Rule 5" stopProcessing="true">
                        <match url="^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*)" ignoreCase="false" />
                        <action type="Rewrite" url="{R:2}" />
                    </rule>
                    <rule name="WordPress Rule 6" stopProcessing="true">
                        <match url="^([_0-9a-zA-Z-]+/)?(.*\.php)$" ignoreCase="false" />
                        <action type="Rewrite" url="{R:2}" />
                    </rule>
                    <rule name="WordPress Rule 7" stopProcessing="true">
                        <match url="." ignoreCase="false" />
                        <action type="Rewrite" url="index.php" />
                    </rule>
                </rules>
            </rewrite>
        </system.webServer>
    </configuration>

    What WP wants in the .htaccess file:

    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]

Viewing 3 replies - 1 through 3 (of 3 total)
  • Thread Starter jgrogan

    (@jgrogan)

    Just a bump to see if anyone out there can help me with this problem.

    Thread Starter jgrogan

    (@jgrogan)

    Performed the upgrade to WordPress 3.2. I am still having the same issue with multisite users.

    Basically, I created a new site, created a new user for that site and made them the administrator of that new site.

    When I visit the new site and click Log In, it takes me to the root log in. However, no matter which log in I use (the root or the individual sites’ login), I still get the error “…you do not currently have privileges on this site”. The new version then gives me a link to the dashboard for this new user’s site, which returns me right back to the “No privileges” page.

    I am looking at the site right now in the network and this user is listed as the administrator. I have deleted the site and the user and recreated them both, once letting the new site create the user, and again creating the user first then the site. Still no go.

    Someone, please help me get this going.

    Thread Starter jgrogan

    (@jgrogan)

    There are no plug-ins running, and this was all a fresh install on a new server. Seems to me to be an issue with the redirect code for multisites, but I am far from an expert on URL rewrites and .htaccess stuff.

    Would it help if I removed IIS and ran Apache?

    Again, any assistance would be greatly appreciated.

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘MultiSite, New user's blog gets error "?c=5"’ is closed to new replies.