Deployed site not reachable by domain name

Deployed site to Linode and it cannot be reached by domain name, but is reachable by IP address. The HTTP and https ports are not open.

Do I need to open the ports on the linux server or do I have to install something like Apache?

You need to configure your domain name with the ip address assigned to your Linode system. (The exact method for doing that will depend upon the registrar through which you acquired your domain name.)

I have done that with with namecheap and a linode domain. The ports being closed is the issue.

If you can access it by IP address and not by domain, then no, the ports are not the issue.

When your browser issues a request by domain name, your operating system issues a DNS-lookup request to find the IP address associated with that name. It then issues that request to the identified address, in exactly the same way as if you issued that request by specifying the IP address in the address bar.

Now, if your web server (nginx, etc) is configured to make a distinction in handling requests originating as a request by name instead of a request by address, that’s a different issue - but again, totally unrelated to what ports are open.

If you can’t access your site by either IP address or domain name, then you may have a port issue. But this isn’t the situation you’ve described above.

That is what I thought, but this is from Linode support.

“After running an Nmap scan on your Linode, I am not seeing any open http or https ports.”

Do I have to set up a web server or does the Django marketplace install have that?

The short answer is “yes”. You need to install and configure a web server to run your project. And there’s a lot more work than just installing the package.

See How to deploy Django | Django documentation | Django.

You may also want to read Django Tutorial Part 11: Deploying Django to production - Learn web development | MDN, and find blog posts along the line of How To Set Up Django with Postgres, Nginx, and Gunicorn on Ubuntu 22.04 | DigitalOcean