[resolved] Multisite Subdirectory: Sites Not Found (9 posts)

  1. micahmills
    Posted 2 years ago #

    I have developed a web app using WP multisite as the framework. I am trying to get everything moved over to the live server and it is giving me headaches. I can access the main admin interface at domain.com/wp-admin, but when I try to get to any of the sites in the subdirectory or the admin for the individual sites (domain.com/site2/wp-admin) I get a Not Found error.

    Any ideas?

  2. Patrick Nommensen
    Multisite Master
    Posted 2 years ago #

    Do you happen to have a folder in your root directory that's called, as per your example, "site2?"

    I'm thinking perhaps the web server is looking there. Although you are creating the websites as sub-directories of the root domain, there shouldn't be any physical folders present.

  3. micahmills
    Posted 2 years ago #

    No there isn't any non wordpress folders in the root directory. If it helps I am pulling this from a Git repo. This code works on my local environment and in a staging/test server.

  4. What does the not-found look like? WordPress or a server error?

  5. micahmills
    Posted 2 years ago #

    It is a server error. White page black text.

  6. 1) Make ABSOLUTELY sure there isn't a site2 folder

    2) What's in your .htaccess?

  7. micahmills
    Posted 2 years ago #

    There are currently 5 sites on this multisite setup and only the main site works. I am absolutely sure that there are no subfolders by the names of the sites.

    I thought it might have been an htaccess problem so I copied and pasted this from a previous forum post from Ipstenu for MultiSite subfolder setups.

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    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
    # Change PHP memory limit, time limit,
    # max post size, and max upload file size
    php_value memory_limit 256M
    php_value max_execution_time 300
    php_value upload_max_filesize 32M
    php_value post_max_size 32M
  8. You should always use the .htaccess WP wants you to use.

    Go to yourdomain.com/wp-admin/network/setup.php

    Use that one.

    Getting a server error though means the problem is your server doesn;t understand Multisite and you'll need to ask your host if they have 'AllowOverride' set to either 'All' or 'Options All' in your httpd.conf.

  9. micahmills
    Posted 2 years ago #

    Ipstenu you pointed me in the right direction with the httpd.conf.

    This server is a VM on our own local server and was pretty much a vanilla LAMP stack. I dug around in the httpd.conf and found that the ServerAdmin, and ServerName where not set. I also moved the DocumentRoot to html/domainname.com just for good measure.

    One of those changes fixed it for me. Thanks guys.

    Micah Mills

Topic Closed

This topic has been closed to new replies.

About this Topic