After having been bitten by the erroneous LANG=UTF-8 environment variable that Terminal added (you can disable it in the prefs under Advanced), I decided to figure out why man port would claim there is no man page for port.
The problem turns out to be not any misconfiguration of /etc/man.conf, that file is fine as it is. The real problem is the MANPATH environment variable that's shown up out of nowhere. Or rather, it's set by /usr/libexec/path_helper from the shell startup files. The goal of path_helper is to make it easy to add entries to everyone's PATH, in particular entries for X11. But path_helper doesn't seem to know that also setting MANPATH is a) unnecessary with a modern man program and b) detrimental, because setting MANPATH disables the automatic matching of man directories with bin directories in your PATH.
I fixed it by unsetting MANPATH in my shell startup file.

