What is the difference between logic-based and rule-based AI?
Rule-based systems cover a wide range of systems. Some make use of boolean if/then/else rules, others may use weighting or even probabilistic inference. Some operate on frames, some on java objects, some on propositions that can be formulated in predicate logic. An example of a popular rule system is Drools.
Some rule systems can be expressed as a subset of predicate logic. For example, SWRL is a W3C standard rule language that extends OWL Description Logic (DL) with horn rules. Both OWL-DL and SWRL are expressible in first-order predicate logic. However, not all rule languages are directly expressible in this way, as rule languages encompass such a range of semantics. Even in cases like Prolog, there are subtleties. Pure Prolog is a subset of FOL, but actual existing Prolog implementations are not FOL subsets (e.g. order of precedence matters).
The W3C Rules Interchange Format (RIF) working group has done a lot of work attempting to unify these different perspectives. I'm not sure the best place to start to see a summary, but you can see some useful material on the group charter page.