EDIT: Debugging the user setup, it was found with netstat there is already a process using 1996/TCP:
netstat -nlp | grep 1996 tcp 0 0 0.0.0.0:1996 0.0.0.0:* LISTEN 4729/python
So the configuration examples, were changed to 1997/TCP.
Apache/mod_ssl have to be told 1997/TCP and 1980/TCP are HTTPS ports. By default 443/TCP is already known, but any others TLS aware TCP ports have to be added to the configuration.
Otherwise, any non 443/TCP por, will be handled only as an HTTP capable port.
For instance, in CentOS, you have to add to /etc/httpd/conf.d/ssl.conf and in Debian/Ubuntu at /etc/apache2/ports.conf the lines:
Listen 1997 https Listen 1980 https
You also have to define the ports in the corresponding vhosts:
<VirtualHost *:1997> Servername example.com .... </VirtualHost> <VirtualHost *:1980> Servername example.com .... </VirtualHost>
It is also little known, you can do something as (as an example only, do not use it if you still have the vhost using :*443):
<VirtualHost *:443 *:1980> Servername example.com .... </VirtualHost>
After editing the configuration files, you have to restart Apache. In Debian/Ubuntu, it is restarted doing:
sudo service apache2 restart
From Apache - Binding to Addresses and Ports
Specifying the protocol with Listen
The optional second protocol argument of Listen is not required for most configurations. If not specified, https is the default for port 443 and http the default for all other ports. The protocol is used to determine which module should handle a request, and to apply protocol specific optimizations with the AcceptFilter directive.
You only need to set the protocol if you are running on non-standard ports. For example, running an https site on port 8443:
Listen 192.170.2.1:8443 https
Important Note: there should only be configured one Listen line/directive per port. If you have already a Listen directive for these ports, you either comment them or add https on front of them. Otherwise, you will have a "Address already in use" when starting Apache.
TLDR of last paragraph: you have already a duplicate Listen for at least 1996 in probably apache2.conf, take it out. (no, it is being used by another running service)
Second Note: Do not use ports you might have configured on other running services.
http://example.com/myprojectstill works. Issue is withhttpsand specific ports 1996, 1980