MyBB Community Forums

Full Version: Enabled .htaccess breaks forums
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
So I have enabled the .htaccess on my forums as a means to make it look better, however I am noticing that it breaks all sub forums and links, so like for example my website is https://forgottenninjas.com/ and if you click on any of the forums to go to them it gives a 404 not found error. and the link is changed from the dynamic to static link, https://forgottenninjas.com/forum-2.html instead of it being what it is without htacces which is https://forgottenninjas.com/forumdisplay.php?fid=2 .
I am confused as to why this is and how to fix it, do I need to install something else to make this work properly?
Thanks! ~piecrustyumyum

Here is my .htaccess which is the default I haven't changed anything to my knowledge in it.
VVVVVVV
Options -MultiViews +FollowSymlinks -Indexes

#
# If mod_security is enabled, attempt to disable it.
# - Note, this will work on the majority of hosts but on
#   MediaTemple, it is known to cause random Internal Server
#   errors. For MediaTemple, please remove the block below
#
<IfModule mod_security.c>
# Turn off mod_security filtering.
SecFilterEngine Off

# The below probably isn't needed, but better safe than sorry.
SecFilterScanPOST Off
</IfModule>

#
# MyBB "search engine friendly" URL rewrites
# - Note, for these to work with MyBB please make sure you have
#   the setting enabled in the Admin CP and you have this file
#   named .htaccess
#
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^forum-([0-9]+)\.html$ forumdisplay.php?fid=$1 [L,QSA]
RewriteRule ^forum-([0-9]+)-page-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2 [L,QSA]

RewriteRule ^thread-([0-9]+)\.html$ showthread.php?tid=$1 [L,QSA]
RewriteRule ^thread-([0-9]+)-page-([0-9]+)\.html$ showthread.php?tid=$1&page=$2 [L,QSA]
RewriteRule ^thread-([0-9]+)-lastpost\.html$ showthread.php?tid=$1&action=lastpost [L,QSA]
RewriteRule ^thread-([0-9]+)-nextnewest\.html$ showthread.php?tid=$1&action=nextnewest [L,QSA]
RewriteRule ^thread-([0-9]+)-nextoldest\.html$ showthread.php?tid=$1&action=nextoldest [L,QSA]
RewriteRule ^thread-([0-9]+)-newpost\.html$ showthread.php?tid=$1&action=newpost [L,QSA]
RewriteRule ^thread-([0-9]+)-post-([0-9]+)\.html$ showthread.php?tid=$1&pid=$2 [L,QSA]

RewriteRule ^post-([0-9]+)\.html$ showthread.php?pid=$1 [L,QSA]

RewriteRule ^announcement-([0-9]+)\.html$ announcements.php?aid=$1 [L,QSA]

RewriteRule ^user-([0-9]+)\.html$ member.php?action=profile&uid=$1 [L,QSA]

RewriteRule ^calendar-([0-9]+)\.html$ calendar.php?calendar=$1 [L,QSA]
RewriteRule ^calendar-([0-9]+)-year-([0-9]+)-month-([0-9]+)\.html$ calendar.php?calendar=$1&year=$2&month=$3 [L,QSA]
RewriteRule ^calendar-([0-9]+)-year-([0-9]+)-month-([0-9]+)-day-([0-9]+)\.html$ calendar.php?action=dayview&calendar=$1&year=$2&month=$3&day=$4 [L,QSA]
RewriteRule ^calendar-([0-9]+)-week-(n?[0-9]+)\.html$ calendar.php?action=weekview&calendar=$1&week=$2 [L,QSA]

RewriteRule ^event-([0-9]+)\.html$ calendar.php?action=event&eid=$1 [L,QSA]

<IfModule mod_env.c>
SetEnv SEO_SUPPORT 1
</IfModule>
</IfModule>

#
# If Apache is compiled with built in mod_deflade/GZIP support
# then GZIP Javascript, CSS, HTML and XML so they're sent to
# the client faster.
#
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/css text/html application/xhtml+xml text/xml application/xml text/plain text/x-component application/javascript application/x-javascript application/rss+xml application/atom+xml application/json application/manifest+json application/x-web-app-manifest+json application/vnd.ms-fontobject application/font-sfnt application/font-woff application/font-woff2 image/svg+xml image/x-icon
</IfModule>

# Note: You are able to choose a different name in the Admin CP. If you've done that you need to change it here too
<Files "error.log">
Order Deny,Allow
Deny from all
</Files>
Is mod_rewrite installed? Doesn't sound like it is.
(2016-11-02, 08:01 PM)Matt Wrote: [ -> ]Is mod_rewrite installed? Doesn't sound like it is.

It should be I am double checking

**UPDATE** It is enabled, I typed in sudo a2enmod rewrite and it says it is already enabled
Do you actually want to use the forum-2.html URLs? If not, just remove all the rewrite stuff and the setenv seo support and go to your settings and set mybb sef urls off instead of auto.

If you do want to use them, fix your mod rewrite. Maybe you need "RewriteBase /" after RewriteEngine on. That's only if your rewritebase is somehow not correct by default.
(2016-11-02, 09:49 PM)frostschutz Wrote: [ -> ]Do you actually want to use the forum-2.html URLs? If not, just remove all the rewrite stuff and the setenv seo support and go to your settings and set mybb sef urls off instead of auto.

If you do want to use them, fix your mod rewrite. Maybe you need "RewriteBase /" after RewriteEngine on. That's only if your rewritebase is somehow not correct by default.

I wouldn't mind using it, I ultimately just want to make the links cleaner. So like without the .html, .php etc. and cleaner links thus forum-2 would be nice. I did add the "RewriteBase /" and reenabled my htaccess and it does the same thing.

(2016-11-02, 09:49 PM)frostschutz Wrote: [ -> ]Do you actually want to use the forum-2.html URLs? If not, just remove all the rewrite stuff and the setenv seo support and go to your settings and set mybb sef urls off instead of auto.

If you do want to use them, fix your mod rewrite. Maybe you need "RewriteBase /" after RewriteEngine on. That's only if your rewritebase is somehow not correct by default.

How can I get the htaccess fixed? I noticed also even if I removed all the Rewrite stuff it still did the same thing for some reason.
**SOLVED** 
Had to change something in the apache2.conf from this

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted

To this

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted

That fixed my issue