Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
VGSources
Blog

How to Set Up Let’s Encrypt for Multiple Apache Virtual Hosts

A practical guide to issuing and renewing Let's Encrypt certificates across multiple Apache virtual hosts, including SAN planning, webroot grouping, vhost verification, and failure recovery.
Length10 min Posted Quest giverVGSources Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use Certbot to issue either one SAN certificate covering several Apache names or separate certificates for each virtual host. Make every name resolve to the Apache server that answers the ACME challenge, keep each challenge in the correct document root, verify the selected vhost, and test certbot renew --dry-run before relying on unattended renewal.

How multi-vhost ACME validation works

Let’s Encrypt does not validate an Apache configuration by reading its files. It validates control of each DNS name. For an HTTP-01 challenge, the certificate authority requests a temporary token over port 80. Apache must return that token from the virtual host selected for the requested name. For DNS-01, the token is published as a DNS TXT record instead, so inbound HTTP access is not required.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Every name on a certificate must therefore resolve to the system that can answer its challenge. Check both A and AAAA records: an IPv6 address that points elsewhere can make validation reach a different server even when the IPv4 address is correct. Port 80 must be reachable from the public internet for HTTP-01, and port 443 must be reachable for ordinary HTTPS service after issuance.

Certbot’s Apache and webroot modes assume an HTTP site already exists. The Apache plugin can authenticate and install certificates by editing the Apache configuration. The webroot plugin writes a temporary file while Apache continues running, leaving configuration changes under your control.

#1 Best Overall
Sale
Gaoye Blue Light Blocking Glasses
  • BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
  • EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
  • COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
  • LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
  • WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.

Choose a certificate layout before issuing anything

Certbot supports a single certificate with multiple -d names and separate certificates for different sites. Apache’s mod_md is a third option that keeps ACME provisioning and renewal inside Apache itself.

Approach Best fit When a name changes Renewal-failure isolation Challenge and operational considerations
One SAN certificate Names that are administered and deployed together A changed name requires replacing the certificate containing all names One failed issuance or renewal affects every name on that certificate One certificate is installed in the relevant HTTPS vhosts; webroot grouping must still map every name to the correct root
Separate certificate per vhost or site Sites with independent owners, roots, or release schedules Only the certificate for the changed site is replaced A failure is confined to one certificate More renewal entries and certificate files must be monitored
Apache mod_md Deployments that want Apache to own the ACME lifecycle Apache manages the affected managed domain Managed-domain behavior is handled by Apache rather than a Certbot renewal set Native Apache ACME provisioning; confirm module and distribution support before adopting it

A SAN certificate is convenient when aliases always move together. Separate certificates reduce the blast radius of a DNS, webroot, or renewal problem. Choose one model deliberately; do not create a single certificate merely because several sites happen to share a server.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Inventory every virtual host and prerequisite

Make an inventory before installing a certificate. For each site, record:

  • The fully qualified ServerName and every ServerAlias.
  • The public A and AAAA records and the address each record should reach.
  • The HTTP virtual host on port 80, including its DocumentRoot.
  • The HTTPS virtual host on port 443 and the certificate name you intend to use.
  • Whether names will share one certificate or be issued separately.

Confirm that firewalls, cloud security groups, load balancers, and NAT rules permit inbound port 80 for HTTP-01 and port 443 for normal HTTPS. The path /.well-known/acme-challenge/ must be readable without authentication. Check that rewrite rules, access controls, proxies, and application routers do not redirect, deny, or consume that path unexpectedly.

For a webroot or Apache-plugin flow, an HTTP site must already be running. If exposing port 80 is impossible, plan DNS-01 with a supported DNS automation plugin, or evaluate mod_md. DNS-01 avoids inbound HTTP reachability but requires the ability to create the required TXT records.

Install and verify Certbot

Install Certbot using the package and instructions appropriate for the Linux distribution that hosts Apache. Package names, module locations, service names, and automatic scheduling differ by distribution, so use that system’s supported installation method rather than copying a package command from another operating system.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Windex Gaming Cleaning Wipes, Pre-Moistened Wipes to Instantly Clean all Gaming Gear and Electronics, Resealable Packaging for a Freshness Lock, 25 count (Pack of 1)
  • WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
  • AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
  • PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
  • ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
  • COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed
  1. Install Certbot and, when using Apache automation, its Apache plugin.
  2. Verify the executable and version with certbot --version.
  3. Confirm that the Apache service is running and that the intended port-80 vhosts answer ordinary requests.
  4. Back up the Apache configuration before allowing an installer to edit it.

The Apache plugin acts as both an authenticator and an installer. The webroot plugin only performs authentication by placing a temporary challenge file, which is useful when you want to review and maintain all Apache directives yourself.

Issue a certificate with the Apache plugin

For one site and its aliases, the concise form is:

sudo certbot --apache -d example.com -d www.example.com

Add every name that should appear on that certificate with another -d option. Certbot identifies the matching Apache virtual host, completes the challenge, and can write the SSL directives and redirect choices. Review those changes rather than assuming that the first matching vhost is the intended one.

For several sites, either run a separate command for each certificate or include names together only when they share the same operational lifecycle. If you use the Apache plugin to create a SAN certificate, verify that each HTTP name reaches the vhost Certbot selected before requesting production issuance.

Issue certificates with webroot when roots differ

Webroot mode is the safer choice when Apache configuration edits must remain under administrator control. Certbot writes a temporary file below the webroot you specify; the HTTP vhost serving that name must expose the same directory.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

When names use different document roots, repeat -w before the domains that belong to each root:

sudo certbot certonly --webroot 
  -w /var/www/example -d example.com -d www.example.com 
  -w /var/www/api -d api.example.net

Certbot assigns each following -d name to the most recently specified webroot path. In this example, the first two names use /var/www/example, while api.example.net uses /var/www/api. Keep the grouping explicit; placing a -d before the wrong -w creates the challenge file in a directory that the matching vhost may never serve.

Rank #3
Sale
LISEN Cell Phone Stand Phone Holder for Desk, Office Decor Gadgets for Men
  • Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
  • Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
  • Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
  • ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
  • Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)

Before production issuance, create a test file such as /.well-known/acme-challenge/check in each root and request it through every corresponding HTTP name. Remove the test file afterward. Ensure that application rewrites do not send the path to a front controller, and that permissions allow Apache to read it.

Attach certificates to Apache HTTPS vhosts

If you used --apache, inspect the generated SSL virtual host and confirm that it contains the intended names, certificate paths, and redirect behavior. If you used certonly --webroot, wire the certificate into the HTTPS vhost yourself.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Certbot maintains live symlinks under /etc/letsencrypt/live/<certificate-name>/. A typical Apache HTTPS vhost points to:

SSLCertificateFile /etc/letsencrypt/live/<certificate-name>/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/<certificate-name>/privkey.pem

Use the actual certificate name shown by Certbot. Enable Apache’s SSL support and the intended site using your distribution’s normal module and site commands, then test syntax:

apachectl configtest

Only after a successful configuration test should you gracefully reload Apache. A renewal replaces the files behind the live symlinks; Apache processes that already have the old certificate continue using it until they reload.

Keep HTTP-to-HTTPS redirects enabled for normal traffic if desired, but make sure the challenge path remains reachable during issuance and renewal. A redirect that ends at an unavailable host, an authentication wall, or a different server can break HTTP-01.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Ledagic IC+RGBW USB Powered Led Light Bar with App & Remote Control, 2 Pack
  • Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
  • Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
  • 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
  • Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
  • USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC

Verify each name and the selected virtual host

Test every ServerName and ServerAlias, not just the first name on a certificate. A certificate may be cryptographically valid while Apache serves the wrong site because of duplicate aliases, vhost ordering, an IPv6 mismatch, or a default SSL vhost.

  1. Run apachectl -S and inspect which port-80 and port-443 vhost Apache selects for each name.
  2. Request the HTTP URL for each name with a browser or curl -I http://name.example/. Confirm that the expected site responds.
  3. Request a known file below /.well-known/acme-challenge/ while testing webroot mapping. It must return from the expected document root without an authentication challenge.
  4. Open the HTTPS URL and inspect the presented certificate’s names and expiry date.
  5. Confirm that the HTTPS request lands in the intended vhost rather than a default site that happens to have a valid certificate.

Repeat the checks over both IPv4 and IPv6 when both DNS record types exist. Test from outside the server’s local network so internal DNS, split-horizon routing, or a local proxy does not hide a public reachability problem.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Automate renewal for all managed certificates

Certbot’s renewal command evaluates every certificate it manages and renews only certificates that meet the current readiness threshold. Run a staging-style dry run first:

sudo certbot renew --dry-run

When the dry run succeeds, the normal command is:

sudo certbot renew

Most installations schedule this command automatically. The renewal process reuses the authenticator and options saved when each certificate was created, so an old webroot, redirect, or plugin choice can remain in effect long after the Apache file has changed. Review the stored certificate list with:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
sudo certbot certificates

As of Certbot 4.0.0, a certificate is considered ready when less than one-third of its lifetime remains. For certificates with a lifetime of 10 days or less, the readiness threshold is one-half of the lifetime. Certbot therefore does not renew every certificate on every run; it renews only those inside the applicable window.

Run a dry run after changing a document root, redirect, reverse-proxy route, firewall, DNS target, or Apache vhost. A dry run exercises the renewal path against the staging service without consuming a normal production issuance.

Best Value
Sale
HUANUO FlowLift™ Dual Monitor Stand, Fully Adjustable Gaming Monitor Desk Mount for 13–32″ Computer Screens, Full Motion VESA 75x75/100x100 with C-Clamp & Grommet Base, Each Arm Holds 4.4 to 19.8 lbs
  • Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
  • Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
  • Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
  • Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
  • Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.

Change saved renewal settings safely

Certbot 2.3 and newer support reconfigure for changing renewal options attached to a named certificate:

sudo certbot reconfigure --cert-name <name>

Use the certificate name reported by certbot certificates. Test the revised options against staging before committing them to the renewal configuration. This is preferable to deleting and recreating a certificate simply because its webroot or authenticator changed.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If Apache does not reload automatically after a successful renewal, use a narrowly scoped deploy hook:

sudo certbot renew --dry-run --deploy-hook "systemctl reload apache2"

Confirm the service name on your distribution and verify the hook during a dry run. A graceful reload is sufficient for Apache to read the new certificate files. Do not use --force-renewal as a routine test; unnecessary production requests can consume the certificate authority’s rate-limit budget.

Decide when DNS-01 or mod_md is better

Use DNS-01 when HTTP cannot be exposed

HTTP-01 depends on public port 80 and the correct HTTP vhost. If a firewall policy, private network, or architecture prevents that reachability, use DNS-01 with a supported DNS automation plugin. The challenge is a DNS TXT record, so the validation does not depend on Apache serving a file. DNS automation introduces its own requirements: the account must be allowed to update the authoritative DNS zone, and propagation behavior must be understood before production use.

Consider mod_md when Apache should own the lifecycle

Apache’s mod_md provides native ACME provisioning and renewal for Apache-managed domains. It can be preferable when keeping certificate lifecycle inside Apache is more important than using Certbot’s certificate inventory and renewal commands. Confirm that your Apache build and operating system package the module and document its managed-domain configuration before switching a production fleet.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

IP-only deployments need a different plan

Current Let’s Encrypt guidance notes that the Apache and nginx plugins do not yet support certificates for IP addresses. A deployment reached only by an IP address therefore cannot be treated like a normal DNS-name request through those plugins. Use a validation path and client that support the required certificate type, and do not assume that adding an IP value to an ordinary Apache-plugin command will work.

Troubleshoot the failures that occur most often

Symptom Likely check Corrective action
HTTP-01 challenge returns 404 The selected DocumentRoot is wrong, or webroot groups are ordered incorrectly Place /.well-known/acme-challenge/ in the root actually served by that name and correct the -w ordering
The challenge reaches another site Duplicate ServerName/ServerAlias, a default vhost, or an IPv6 mismatch Run apachectl -S, inspect A and AAAA records, and make the port-80 vhost mapping explicit
Renewal works for one site only A renewal file retained an old webroot, redirect, or authenticator Run certbot certificates, inspect the named renewal configuration, then use certbot reconfigure and a tested dry run
HTTPS shows an old certificate Apache was not reloaded, or the wrong SSL vhost answered Run apachectl configtest, gracefully reload Apache, and verify the selected vhost and certificate paths
Port 80 cannot be exposed HTTP-01 is unsuitable for the network design Use DNS-01 with a supported DNS automation plugin or evaluate mod_md

Production checklist

  • Every certificate name has the intended public A and, when present, AAAA record.
  • Port 80 reaches the correct Apache vhost for every HTTP-01 name.
  • The challenge directory is readable without login, rewrite interference, or proxy misrouting.
  • SAN names are grouped intentionally, or separate certificates are used where failure isolation matters.
  • HTTPS vhosts reference the correct fullchain.pem and privkey.pem live paths.
  • apachectl configtest succeeds before every reload.
  • apachectl -S shows the expected vhost and alias ownership.
  • sudo certbot renew --dry-run succeeds after each material routing or firewall change.
  • A renewal hook reloads Apache when the installation does not do so automatically.
  • Monitoring alerts on renewal failures and on certificates approaching expiry.

What a reliable setup looks like

The reliable pattern is not simply “run Certbot once.” It is a mapped relationship between DNS, the port-80 vhost, the webroot or DNS authenticator, the HTTPS vhost, and the renewal configuration. Once each name has an unambiguous validation path, certificate files are attached to the intended SSL vhost, and a dry run has passed for every managed certificate, multiple Apache virtual hosts can renew without manual issuance at every expiry.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.