MyBB Community Forums

Full Version: Gzip alogrithm
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
What is the algorithm / method of gzip? I had enabled gzip and it works fine, but the only problem is that it is changing profile links but when clicking on profile links it gives 404 error. Any manual edit to fix that? because it was working fine before. and for all other links. but the only problem with profiles.
Turning gzip on shouldn't have any effect whatsoever on the url scheme. The code looks like this though:

if($mybb->settings['gzipoutput'] == 1) {
    $contents = gzip_encode($contents, $mybb->settings['gziplevel']);
}

It just uses the usual PHP gzip_encode function on the contents Wink
Then what is the reason that, only profile links are not working (giving 404 error), as this would be shorten using gzip as
http://community.mybb.com/user-21114.html

But the normal links works fine for profiles
http://community.mybb.com/member.php?action=profile&uid=21114

My question is, how is that , I mean a part of website (user profiles) links are not set using gzip.
I'm going to guess you have a problem with your .htaccess file. Please post it's contents here. Enabling/Disabling gzip should have absolutely no effect on issues with URLs.
RewriteBase /
AddHandler application/x-httpd-php52 .css
# DO NOT REMOVE THIS LINE AND THE LINES BELOW REDIRECTID:CGw5QW
RewriteEngine on

# DO NOT REMOVE THIS LINE AND THE LINES ABOVE CGw5QW:REDIRECTID




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$ sh


Well thanks it was my htaccess file. I wonder how did this happen. i.e. the lines in mod_rewrite.c have been deleted. Which I guess the plugin does (page optimizer)? anyways this is what I have to add and its working fine now. btw thanks for your idea Big Grin
<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]+)\.html$ calendar.php?action=yearview&calendar=$1&year=$2 [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 application/javascript text/css text/html text/xml
</IfModule>

Well, that's why you're having issues - there's no rewrite rule for user profiles. Take a look at the htaccess.txt provided with the MyBB download to get the rule.
But this arises a question, does a plugin is capable to edit htaccess? because every thing (gzip) was working fine before i active this plugin
Depending on your chmod settings, a plugin can modify core files rather easily. Also, that plugin was last updated in 2008, so it's likely quite out of date.
is there a way to protect htaccess ?
You can chmod it to 644 and I believe that should help Smile
Pages: 1 2