I finally traced the problem to the webserver returning a redirect to the browser to 172.16.1.2 (the LAN ip of my webserver) instead of the IP address of my router or the IP name from the dynamic DNS service. The internal IP address obviously doesn't work outside my LAN.
The fix is edit the apache config file at /etc/httpd/httpd.conf, and search for the section that contains:
# ServerName allows you to set a host name which is...Once you've found this section, add the line:
# your server if it's different than the one the...
# "www" instead of the host's real name).
ServerName mysite.dnsalias.comReplace mysite.dnsalias.com with the DNS name you have mapped to your webserver via the dynamic DNS service). Save and restart apache and your webserver should work as expected.

