You stated your server is directly connected to the Internet now. Can you access websites from a browser on that server or ping outside systems successfully? E.g., does
ping google.com work successfully? Can you ping your server from an external system? If you don't know the external IP address that other systems will need to use to access your server, you can determine that IP address by opening a browser on the server and visiting WhatIsMyIP.com.
If you have firewall software running on the system, e.g., iptables, you will need to configure the firewall software to allow inbound connections to port 80. For iptables, the command
sudo iptables -L will show you the current firewall rules. You can allow inbound connections to port 80 with
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT or you can install the Uncomplicated Firewall (UFW) package to simplify the management of iptables firewall rules with
sudo apt-get install ufw and then enable it and permit inbound port 80 connections with the following commands:
sudo ufw enable
sudo ufw allow 80
See How To Setup a Firewall with UFW on an Ubuntu and Debian Cloud Server for further information on the use of UFW.
If you do have Internet access from the server and access to it from external systems isn't being blocked by firewall software, then perhaps your issue may lie in the configuration of the Apache web server software. Check Apache's
/etc/httpd/conf/httpd.conf configuration file. Look for the following line:
That line will allow Apache to listen for connections to port 80 on all IP addresses for the system. If, instead, you see
Listen 127.0.0.1 80, then it is only listening on the localhost address.
Do you have any section like the following in that
httpd.conf file or in a virtual host file for your site in
Deny from all
Allow from 127.0.0.1
Deny from all statement followed by the
Allow from 127.0.0.1 would only permit access from the localhost address.