FYI,
I found the issue. There were actually a few different problems.
First, The webserver was referencing both private and public ip addresses that correspond to the private ip.
Second, The firewall does not support NAT reflection unless you utilize port forwarding.
The fix was easy. I setup all services to use port forwarding and enabled nat reflection under advanced options and also
modified the lan rule source to * (any) to fix the problem.
What gave it away was that the webserver (with ipcop in front of it) could access webpages via the public ip.
and with pfsense it could not. PFsense does some actual sessioning versus ipcop providing only basic nat.
PFsense was not the issue!!