WPMU won't create files for new blogs (19 posts)

  1. cbeard
    Posted 6 years ago #

    I am new to the WordPress environment. I set up WordPress MU 2.92 on an Ubuntu LAMP server. The setup seems to function fine, except when I try to create a new blog. If I open the admin console, go to Site Admin and Blogs, I can create a new blog, but the files don't show up on the server and if I go to the link, I get a 404 Not Found error. I would like to be the only one creating blogs on this site, but I have tried enabling "Allow New Registrations."

  2. but the files don't show up on the server

    They never will. The blogs are *virtual*. They exist only in the database.

    So, getting a 404 is a completely different issue. What format did you pick? Subdomains need wildcard subdomains enabled on the server and in the DNS records. This is outlined in the sticky in this forum as well as in the codex.

    For subfolder blogs, they work via htaccess. If you pasted in the htaccess file as directed, chances are it's not being read properly. You need mod_rewrite on the server, and it sometimes has to specifically be told to read the htaccess file in the web account.

    AllowOverride FileInfo Options neds to go in the httpd.conf file.

  3. cbeard
    Posted 6 years ago #

    Thank you very much for your help! I set us up to use subfolders so I need to look at the htaccess file. I will do that and see what happens. Thanks again!

  4. cbeard
    Posted 6 years ago #

    OK. Here is what I have. My httpd.conf is empty and word on the Internet is that apache2.conf has taken the place of httpd.conf. I have searched apache2.conf and cannot find the LoadModule line mentioned in the README.txt or the AllowOverride line also mentioned in the README.txt. This may be the problem. Here are some of the other troubleshooting steps I have taken:

    .htaccess has RewriteEngine On
    Verified link to rewrite.load is in /etc/apache2/mods-enabled
    Verified rewrite.load is in /etc/apache2/mods-available
    Verified “LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so” contents of rewrite.load
    Verified /usr/lib/apache2/modules/mod_rewrite.so file exists.

    What should I modify in which file? Thank you for your help!

  5. cbeard
    Posted 6 years ago #

    I was able to modify the AllowOverride in alias.conf which is included in apache2.conf and verified that the LoadModule line was also in the mod_rewrite.load file which was also being loaded with apache2.conf. After that I rebooted the server. Still cannot create new blogs. I'm going to look at the database next to make sure things are being created in the database and that security is correct. I'll greatly appreciate any advice you can give me. Thanks!

  6. cbeard
    Posted 6 years ago #

    I'm about ready to start from scratch with WordPress MU. The database might be the issue. I had a bunch of tables disappear from the database so I'm not sure what happened. :(

  7. Nah, in apache2 it still uses httpd.conf, it just put the vhosts in include files instead. (still getting used to the manual edits myself)

    The allowoverride isn't in there by default. ;)

  8. cbeard
    Posted 6 years ago #

    Well, I'm at a loss. I rebuilt everything from scratch and it's still doing the same thing. I can create a new blog and when I try to go to the page, I get 404 page not found. I've checked everything that I know to check and the only thing I don't have is I'm not using a SMTP server so I don't get any email messages. I'd use regular WordPress, but my boss wants the capability to do multiple blogs. I don't know what I'm going to do. Any ideas?

  9. Are you accessing your blogs via localhost?

  10. @cbeard - the litmus test for making sure things work (before you dent your head too bad) is to check the permalinks off the main blog. Do they work?

    And I mean pretty permalinks, like yourdomain.com/about/

  11. cbeard
    Posted 6 years ago #

    I tried accessing the Hello World page using the wget command from the localhost and also remotely via a browser and both are returning the 404 error page not found. When I tried the server.domain.com/about page I also got a 404 error. Does that help at all?

  12. Yep. A lot. It means in general mod_rewrite is either not installed properly or is just not reading the .htaccess file.

  13. cbeard
    Posted 6 years ago #

    Here is the .htaccess file and the permissions. The module is supposed to be loading through the apache2.conf but everything I see on the web says to load it in httpd.conf which is empty. I guess I'll try to load it in the httpd.conf and see what happens. Any other thoughts or suggestions?

    php_flag register_globals 0
    php_flag display_errors 0
    RewriteEngine On
    RewriteBase /

    #uploaded files
    RewriteRule ^(.*/)?files/$ index.php [L]
    RewriteCond %{REQUEST_URI} !.*wp-content/plugins.*
    RewriteRule ^(.*/)?files/(.*) wp-content/blogs.php?file=$2 [L]

    # add a trailing slash to /wp-admin
    RewriteCond %{REQUEST_URI} ^.*/wp-admin$
    RewriteRule ^(.+)$ $1/ [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule . - [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-.*) $2 [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
    RewriteRule . index.php [L]

    <IfModule mod_security.c>
    <Files async-upload.php>
    SecFilterEngine Off
    SecFilterScanPOST Off

    Permissions on the .htaccess file:
    -rw-r--r-- 1 www-data www-data 705 2010-07-14 16:13 .htaccess

  14. cbeard
    Posted 6 years ago #

    I tried to add the following two lines to the httpd.conf and after rebooting the apache2 service did not start.

    load module mod_rewrite
    AllowOverride All

    I tried to reboot taking each line out and both appear to cause problems with apache. I could swear that these settings are being called and loaded via the apache2.conf file.

  15. so it's not even reading the htaccess file.

    I'm on Debian, hang on lemme go look.

  16. Forgot I had Ubunto on the netbook, sweet. :)

    Go to /etc/apache2/mods-enabled/ Look for a file called rewrite.load, and in it shoudl be the LoadModule directive for mod_rewrite.

    If not, put it there, restart apache - you know the drill. ;)

  17. cbeard
    Posted 6 years ago #

    rewrite.load has the following in it:

    LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

    I've verified that this file exists.

  18. cbeard
    Posted 6 years ago #

    I found out what the problem is and it works now. I couldn't have figured it out without your help! You mentioned that you didn't think the .htaccess file was being read and you were correct! There is a file in the Ubuntu install of Apache (/etc/apache2/sites-available/default) which has two instances of "AllowOverride None" in it that need to be changed to "AllowOverride All". I found the information at: https://help.ubuntu.com/community/EnablingUseOfApacheHtaccessFiles

    Thank you so much for your help and your patience!

  19. thumbs up, awesome!

    Sometimes you just have to go back to the start and trace everything. :)

Topic Closed

This topic has been closed to new replies.

About this Topic