• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

XF 1.1 .htaccess conflicts between XF and WP

#1
I recently just moved to a new server... for some reason wordpress and xenforo are not playing nicely which baffles me, it's been working for a long time.

I've got the main site up at www.domain.com and the forums at www.domain.com/forums

Each software package (wordpress and xf) has their own .htaccess.

Wordpress .htaccess is:

Code:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
XF .htaccess is:

Code:
<IfModule mod_rewrite.c>
        RewriteEngine On
 
        RewriteCond %{REQUEST_FILENAME} -f [OR]
        RewriteCond %{REQUEST_FILENAME} -l [OR]
        RewriteCond %{REQUEST_FILENAME} -d
        RewriteRule ^.*$ - [NC,L]
        RewriteRule ^(data|js|styles|install) - [NC,L]
        RewriteRule ^.*$ index.php [NC,L]
</IfModule>
The issue:

When I enable the .htaccess for wordpress, the main site works great.... but the xenforo links 404... if I disable the wordpress .htaccess the forums work fine.

This exact config worked on my old server but I'm running the exact same software versions, AllowOveride and mod_rewrite are both enabled.

Any thoughts?
 

Jake Bunce

XenForo moderator
Staff member
#6
Try adding this to your WP .htaccess file:

Code:
<IfModule mod_rewrite.c>
RewriteEngine On

# IGNORE FORUMS DIRECTORY
RewriteRule ^forums - [L]

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
 

Jake Bunce

XenForo moderator
Staff member
#8
Then try adding this to your XF .htaccess file:

Code:
<IfModule mod_rewrite.c>
        RewriteEngine On
 
        RewriteBase /forums

        RewriteCond %{REQUEST_FILENAME} -f [OR]
        RewriteCond %{REQUEST_FILENAME} -l [OR]
        RewriteCond %{REQUEST_FILENAME} -d
        RewriteRule ^.*$ - [NC,L]
        RewriteRule ^(data|js|styles|install) - [NC,L]
        RewriteRule ^.*$ index.php [NC,L]
</IfModule>