here is my .htaccess
DirectoryIndex index.php
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?/$1 [L]
RewriteRule ^$ /index.php [L]
RewriteCond $1 !^(index\.php|install|img|images|scripts|fonts|uploads|css|js|robots\.txt|sitemap\.xml|favicon\.ico)
RewriteRule (.*)-(.*)\.html$ wallpapers/show/$2
RewriteRule (.*)-(.*)/$ categories/show/$2
... and that's why people will always tell you to leave a blank line after each Rule, and to annotate each one. It's important to see where each Condition-plus-Rule package ends and the next one begins-- and to know what each one is intended to do. Here you have four Rules.
# Rule 1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?/$1 [L]
"If the request is for
any nonexistent file, serve content from the index.php file, using the requested filename as parameter." Since the Rule doesn't exclude images, css, javascript etc, this package will slow your server to a crawl.
# Rule 2
RewriteRule ^$ /index.php [L]
"If there is a null request, serve content from index.php". This rule is simply unnecessary, because mod_dir will do the same thing. That's its job.
# Rule 3
RewriteCond $1 !^(index\.php|install|img|images|scripts|fonts|uploads|css|js|robots\.txt|sitemap\.xml|favicon\.ico)
RewriteRule (.*)-(.*)\.html$ wallpapers/show/$2
Oh, lordy, this one looks familiar ;) "If the request contains one or more hyphens and ends in .html, then if the part before the hyphen does not begin with {long string of stuff} then serve content from 'wallpapers/show/{stuff, if any, after the final hyphen}
and continue to the next Rule."
# Rule 4
RewriteRule (.*)-(.*)/$ categories/show/$2
"Same as above, without conditions, because this version applies only to requests for directories. Again, continue to the next Rule, if there is one."
99% working? I'm impressed. I would have guessed 67%. The most glaring problem is the lack of [L] flags after rules 3 and 4, but there are undoubtedly others.