The solution was straightforward, though it took me forever to find it.
The website has a “Members” plugin (by Justin Tadlock) and the option “Redirect all logged-out users to the login page before allowing them to view the site.” was checked. So I just unchecked that box, problem solved.