Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. crt.sh | example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.
It produced this output: The selected vhost would conflict with other HTTPS VirtualHosts within Apache. Please select another vhost or add ServerNames to your configuration.
VirtualHost not able to be selected.
My web server is (include version): Apache2
The operating system my web server runs on is (include version): Ubuntu 20.04
I tried port 81 as a fix to the error, but it didn't solve it. I thought maybe the port being already used by the first site was causing the conflict. I'll remove the slashes too. I saw that on a previous config for another server of mine, so I inserted those for continuity.
It might also be necessary to add the www hostname as a ServerAlias directive in pdxwater.org.conf.
Although it seems that wasn't necessary for matthewalbertcole.com it seems. That said I think it's "best" to have subdomains which behave the same as the "apex domain" to be aliasses. That would look like this in an apachectl -S output:
port 80 namevhost example.com (/etc/apache2/vhosts.d/vhosts/example.com.conf:1)
*:443 is a NameVirtualHost
default server matthewalbertcole.com (/etc/apache2/sites-enabled/matthewalbertcole.com-le-ssl.conf:2)
port 443 namevhost matthewalbertcole.com (/etc/apache2/sites-enabled/matthewalbertcole.com-le-ssl.conf:2)
*:80 is a NameVirtualHost
default server matthewalbertcole.com (/etc/apache2/sites-enabled/matthewalbertcole.com.conf:1)
port 80 namevhost matthewalbertcole.com (/etc/apache2/sites-enabled/matthewalbertcole.com.conf:1)
port 80 namevhost pdxwater.org (/etc/apache2/sites-enabled/pdxwater.org.conf:1)
(Personally, I have the preference of using the apex domain as the main virtualhost name and having the www subdomain as an alias.)
That looks lovely! Although you still have two<VirtualHost *:443> sections for matthewalbertcole.com and www.matthewalbertcole.com in stead of a single section with ServerName and ServerAlias. The same goes for pdxwater.org and www.pdxwater.org, although those virtualhosts should have been generated by certbot automatically.. Not sure why certbot would have decided to make a single port 80 virtualhost with ServerName and ServerAlias into two separate VirtualHost sections..
But this shouldn't impair the functionality of both.
After you got HTTPS working on port 443, the only function of the *:80 virtualhosts is to redirect from HTTP (port 80) to HTTPS (port 443), so indeed there's no need for thsoe ProxyPass directives. By commenting them out, they have been disabled, as they should be for HTTP (port 80).
I'm guessing those ProxyPass directives are functional and they are active on the HTTPS virtualhost (no commenting character in front of them), so that seems to be good Assuming you actually want to have that ProxyPass
I do see a HTTP 503 Service Unavailable when I connect to your site, so not sure if there's anything active on port 8080 on your server? Do you know why you have those ProxyPass directives set up in the first place? Maybe your pdxwater.org site doesn't run on Apache itself, but on some other server software? Node.js? Ruby? Tomcat? Anything running on port 8080?
thank you for the insight regarding the proxypass.
Regarding the site unavailable, at the time you checked, the web app wasn't running yet. It should be working now. Thank you for your help. You guys are amazing.