PluginError: Unable to find a virtual host listening on port 80

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., so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.

My domain is:

I ran this command: sudo ./certbot-auto --debug

It produced this output: PLEASE SEE BOTTOM OF THIS MESSAGE

My web server is (include version): Apache

The operating system my web server runs on is (include version):
Linux version 4.4.19-29.55.amzn1.x86_64 (mockbuild@gobi-build-64012) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Mon Aug 29 23:29:40 UTC 2016

My hosting provider, if applicable, is: AWS

I can login to a root shell on my machine (yes or no, or I don’t know): YES

I’m using a control panel to manage my site (no, or provide the name and version of the control panel): NO

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you’re using Certbot):NINSTALLATION NOT COMPLETED

[ec2-user@ip-172-31-38-197 certs]$ sudo ./certbot-auto --debug

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
No names were found in your configuration files. Please enter in your domain
name(s) (comma and/or space separated) (Enter ‘c’ to cancel):
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for
Cleaning up challenges
Exiting abnormally:
Traceback (most recent call last):
File “/opt/”, line 11, in
File “/opt/”, line 1379, in main
return config.func(config, plugins)
File “/opt/”, line 1130, in run
certname, lineage)
File “/opt/”, line 120, in _get_and_save_cert
lineage = le_client.obtain_and_enroll_certificate(domains, certname)
File “/opt/”, line 406, in obtain_and_enroll_certificate
cert, chain, key, _ = self.obtain_certificate(domains)
File “/opt/”, line 349, in obtain_certificate
orderr = self._get_order_and_authorizations(, self.config.allow_subset_of_names)
File “/opt/”, line 385, in _get_order_and_authorizations
authzr = self.auth_handler.handle_authorizations(orderr, best_effort)
File “/opt/”, line 69, in handle_authorizations
resps = self.auth.perform(achalls)
File “/opt/”, line 2264, in perform
http_response = http_doer.perform()
File “/opt/”, line 75, in perform
File “/opt/”, line 110, in _mod_config
for vh in self._relevant_vhosts():
File “/opt/”, line 165, in _relevant_vhosts
" {0}.".format(http01_port))
PluginError: Unable to find a virtual host listening on port 80 which is currently needed for Certbot to prove to the CA that you control your domain. Please add a virtual host for port 80.
Please see the logfiles in /var/log/letsencrypt for more details.

Hi @NKonencrypt

your question is your answer:

Every Apache installation has samples you can use.

Thank you Juergen, I appreciate your response.
Could you pl. tell me if below is good for a /var/www/vhosts/ file?

Do I have to be careful about anything that won’t let my site go down?
What adverse effect it my show on the live site?


DocumentRoot /var/www/vhosts/


ErrorLog /var/www/vhosts/logs/error_log

AllowOverride All

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.