lucy24 - 10:51 am on Mar 3, 2013 (gmt 0)
Delete the ifModule start and end tags. You don't need them.
And once you've done that, you can also delete the second
line ... Unless you're quoting two different htaccess files in two different directories, both using mod_rewrite. If so, you are in deep ###. We just finished hashing out something similar a few days ago. (Short version: Don't even try. It isn't worth the aggravation.)
Doesn't a RewriteBase need a trailing slash? Probably a hypothetical question since I seriously doubt you can change RewriteBases in midstream. Luckily you don't need one; it's safer to write it out explicitly, starting with / for domain root each time.
The single most important thing to remember about htaccess is this: An incoming request doesn't teleport straight to the directory it lives in. Everything has to pass through all the layers of config file and root-level htaccess and inner-directory htaccesses. So you don't really have a "WordPress htaccess" and an "OpenCart htaccess". What you have is one htaccess that is used by everyone, and then a second htaccess that is only used by some things.