• I’ve already searched thoroughly for tutorials on how to configure .htaccess but I just can’t get it work properly no matter what I try. Hopefully you will be able to help me out, let me explain the current situation. There are already several 301 and other redirections in htaccess files, so let me simplify it and if it still won’t work, I’ll post full .htaccess files for a more detailed description.

    Folder of old HTML website: public_html/old
    Folder of new WordPress based website (Site Address is set to http://www.domain.com): public_html/new

    As of now, new WordPress website works fine if one opens http://www.domain.com or http://www.domain.com/new. However, the old website is still accessible via http://www.domain.com/old, so I would like to redirect it to the new website. To put it in other words, I would like to permanently redirect absolutely everything from http://www.domain.com/old as well as subfolders to the new website.

    Could anyone please write me down which rules should I use in .htaccess and in which folder should I put it?

    The second problem is about new WordPress website. Everything works fine except when I try to use SEO URL’s in http://domain.com/sample-post/ format. In that case http://www.domain.com will open fine, however I get the followiong 404 error for all subpages (e.g. http://www.domain.com/news etc.)

    “Not Found
    The requested URL /index.php was not found on this server.
    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.”

    Here’s .htaccess from WP folder (public_html/new):

    RewriteEngine On
    DirectoryIndex index.php
    RewriteBase /new
    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]
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /new/
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /new/index.php [L]
    </IfModule>
    
    # END WordPress

    Thanks a lot for help!

  • The topic ‘htaccess – 301 redirection and WP SEO URLs don't work’ is closed to new replies.