The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →If www.example.com works but example.com shows a default page or another site, troubleshoot two separate layers: DNS must send the apex hostname to the right server, and Apache or Nginx must match that hostname to the intended virtual host. Check DNS first, declare both names explicitly, verify the listener and parsed configuration, then test HTTPS and logs independently.
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
What “the root domain does not work” actually means
The root, or apex, domain is the bare hostname such as example.com. The www name is a different hostname: www.example.com. A browser sends one of those exact names in its request, so a configuration that names only www.example.com does not automatically match example.com.
As an Amazon Associate I earn from qualifying purchases.
Free tools Windows power users keep installed
One-click scans. No signup required.
Two decisions occur before your application serves a page:
- DNS resolution: the requested name must resolve to the server address that runs your web server.
- Virtual-host selection: after the connection reaches that server, Apache or Nginx must select the server block whose configured name matches the request.
A correct DNS record cannot repair a missing or incorrect hostname declaration. Conversely, a perfect virtual-host file cannot help visitors if the apex A or AAAA record points somewhere else. The familiar “default site” symptom usually means the request reached the machine but did not match the intended virtual host.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
Use this order of operations
Changing DocumentRoot or an Nginx root directory first often hides the real problem. Work through the layers in this order:
- Resolve the apex A and AAAA records and verify the returned addresses belong to this server.
- List the apex and every intended alternate name in the Apache or Nginx configuration.
- Confirm the virtual host is bound to the address and port that receive the connection.
- Check which site is the fallback when no name matches.
- Inspect the daemon’s parsed configuration, not only the file you edited.
- Test HTTPS separately, including the certificate and SNI-selected server.
- Use per-site logs and a deliberately generated 404 to prove which virtual host handled the request.
Do not move to the next layer until the previous one is verified. That prevents a DNS error from being mistaken for an Apache ordering issue, or an HTTPS certificate problem from being mistaken for an application failure.
Recommended Free Tools
1. Confirm DNS for the apex name
Check A and AAAA records
Query the exact hostname that fails. For example, from a Unix-like workstation:
dig +short example.com A
dig +short example.com AAAA
dig +short www.example.com A
dig +short www.example.com AAAA
On Windows, use nslookup example.com and repeat for www.example.com. Compare the returned IPv4 and IPv6 addresses with the addresses configured on the web server. If the apex returns an old address, an unrelated service, or an IPv6 address whose server is not configured, fix DNS before touching the virtual-host file.
An A record controls IPv4 traffic; an AAAA record can direct clients over IPv6. A browser may prefer IPv6 when an AAAA record exists, so an apparently correct A record does not prove that the request reaches the same machine.
Apache’s documentation makes the boundary explicit: “Creating virtual host configurations on your Apache server does not magically cause DNS entries to be created for those host names.” A hosts-file entry can make a name resolve on the computer containing that entry, but it does not publish the change for other visitors.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteTest the name that the browser uses
Do not test only the working hostname. Request both names and record the address reached, the status code, and the certificate presented. If www.example.com resolves to the expected server but example.com does not, the fault is outside virtual-host matching until DNS is corrected.
Allow for resolver caching
After changing a record, recursive resolvers and operating-system caches may continue returning the old value for the record’s configured TTL. Verify from more than one network when possible, but do not use a local hosts-file workaround as evidence that public DNS is fixed.
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
2. Declare the apex and alternate names explicitly
Apache configuration
For a single site intended to answer both names on HTTP, put the apex in ServerName and the alternate in ServerAlias:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example
</VirtualHost>
Apache requires each name-based virtual host to have at least a ServerName and a DocumentRoot. ServerAlias adds other names, including the common www form and, where appropriate, wildcard names. The spelling must match the hostname sent by the client; a declaration for only www.example.com does not cover the apex.
If you intentionally want one name to redirect to the other, you can still declare both names in a controlled way and apply the redirect inside the matching virtual host. Do not leave the apex undeclared and expect the first site on the server to perform the redirect.
Nginx configuration
Nginx puts all exact names for a site in the server_name directive:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example;
}
Nginx uses server_name to determine which server block handles a request. Exact names, wildcard names, and regular-expression names are supported, but an exact declaration is the clearest choice for an apex and its www counterpart.
Keep HTTP and HTTPS name lists aligned
It is common to add both names to the port-80 block while leaving the TLS block with only www.example.com. That produces a confusing split: HTTP appears correct, while HTTPS opens a different site or reports a certificate mismatch. Treat the HTTP and HTTPS configurations as separate listeners and verify that each contains every hostname you intend to serve.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
3. Verify the address and port binding
Virtual-host matching starts with the local address and port that accepted the connection. A configuration bound to *:80 should receive traffic on every local IPv4 address for port 80, while a configuration bound to a specific address receives only traffic sent there. Use the binding that actually exists on the server; an address typo can make a perfectly written hostname declaration unreachable.
Check that the daemon listens on the expected ports. On Linux, ss -ltnp displays listening TCP sockets and the owning process; on systems without ss, an equivalent socket-listing tool can show whether Apache or Nginx owns ports 80 and 443. On Windows, netstat -ano shows listening ports, after which the process ID can be matched to the web server.
Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
For Apache, the first grouping key is the most specific matching IP address and port. Only after that grouping does Apache compare the request hostname with ServerName and ServerAlias. Therefore, a vhost on 192.0.2.10:80 is not a substitute for one on another address or on port 443.
For Nginx, inspect every listen directive. A block listening on 443 ssl is unrelated to a block listening only on port 80, even when both contain the same server_name values.
4. Understand the default-site symptom
Apache fallback
When Apache has a set of virtual hosts for the matching address and port but none of their ServerName or ServerAlias values matches the request, Apache uses the first listed virtual host in that set. Apache documents this behavior directly: “If no matching ServerName or ServerAlias is found in the set of virtual hosts containing the most specific matching IP address and port combination, then the first listed virtual host that matches that will be used.”
That first entry may be a distribution’s default page or an entirely different customer site. Seeing the wrong content does not prove that DNS reached the wrong machine; it can mean DNS is correct but the hostname was not declared.
Nginx fallback
Nginx routes an unmatched Host name to the default server for that port. If no block is marked as the default, the first server block for the listening address and port generally becomes the fallback. A request for an undeclared apex can therefore display the same default page even though the server is reachable.
Use the fallback as a clue, not a fix
You can change which block is default, but that only changes what unmatched names see. It does not make the root domain match. The durable fix is to correct DNS or add the missing hostname to the intended virtual host, then verify the parsed order so an accidental duplicate does not win.
5. Inspect the parsed configuration
Apache: apachectl -S
Run:
sudo apachectl -S
On Windows Apache installations, use:
httpd.exe -S
This command dumps how Apache parsed the active configuration, including virtual-host addresses, ports, server names, aliases, and the file and line associated with each entry. Look for:
- the apex and
wwwnames under the intended address and port; - the HTTPS vhost on port 443, not only the HTTP vhost on port 80;
- duplicate names assigned to different virtual hosts;
- an unexpected first-listed vhost acting as the fallback;
- a file that is not enabled or is not included by the main configuration.
If the output does not show the change you made, editing the file again will not help. Enable or include the correct file, fix a syntax error that prevented loading, and run the inspection command again.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
Nginx: test and print the active configuration
Validate the configuration before reloading it:
sudo nginx -t
To inspect the complete configuration Nginx is using, including included files, run:
sudo nginx -T
Search that output for every server_name, the corresponding listen directive, and the certificate paths in the TLS block. A successful syntax test means the file is valid; it does not guarantee that the desired name appears in the correct block, so read the dumped configuration as well.
Reload only after validation
After correcting the configuration, reload the daemon so the running process receives it. Apache commonly uses sudo systemctl reload apache2 on Debian-family systems or sudo systemctl reload httpd on Red Hat-family systems. Nginx commonly uses sudo systemctl reload nginx. Use the service name and management method installed on your operating system, and check the service status if the reload reports an error.
6. Diagnose HTTPS and SNI independently
HTTPS adds a decision before the HTTP request is processed. During the TLS handshake, the client sends the requested hostname through Server Name Indication (SNI). Nginx can use that SNI value to select the server configuration before it sees the HTTP Host header. If the TLS block is missing the apex name or is bound to the wrong address, the connection can receive another site’s certificate and configuration even though port 80 works.
Check the certificate names
The certificate presented on https://example.com must cover example.com. A certificate that covers only www.example.com is not sufficient for the apex. Verify the certificate actually served on port 443, not merely the certificate file you intended to install.
Mirror the names in the TLS server block
For Apache, create or update the <VirtualHost *:443> block so its ServerName and ServerAlias cover the same hostnames as the HTTP block, and ensure the SSL module and certificate directives belong to that block. For Nginx, use a TLS block such as:
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →server {
listen 443 ssl;
server_name example.com www.example.com;
root /var/www/example;
ssl_certificate /etc/ssl/example/fullchain.pem;
ssl_certificate_key /etc/ssl/example/privkey.pem;
}
The paths above are examples; use the certificate and key locations managed on your server. The important routing facts are the listen 443 ssl binding and the complete server_name list.
Test both protocols
Test http://example.com, http://www.example.com, https://example.com, and https://www.example.com separately. Record whether each reaches the intended content, redirects as designed, and presents a certificate containing the requested name. If only HTTPS fails, focus on port 443, SNI, certificate coverage, and the TLS block’s parsed order rather than changing the document root.
Best Value
7. Prove routing with per-vhost logs
Homepage content can be cached or generated by an application, so it is a poor routing test. Give each virtual host its own access and error logs when possible. Then request a path that is guaranteed not to exist, such as a random URL under the site:
curl -i https://example.com/route-check-that-does-not-exist
The response should be a known 404, and the request should appear in the intended vhost’s access log. If it appears in another site’s log, the hostname selected the wrong virtual host. If it appears nowhere, inspect DNS, firewall rules, a proxy or load balancer in front of the server, and whether the request used IPv6.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsApache troubleshooting guidance recommends this deliberate-404 technique because it verifies which vhost handled the request independently of the application’s normal homepage. Check the matching error log at the same timestamp for certificate, permission, rewrite, or upstream errors.
Apache and Nginx: same diagnosis, different controls
| Diagnostic question | Apache | Nginx |
|---|---|---|
| How are names declared? | ServerName for the primary name and ServerAlias for additional names. |
server_name lists exact, wildcard, or regular-expression names. |
| How is the initial group selected? | Most specific matching local IP address and port, then hostname comparison. | The matching listen address and port, then name matching within that group. |
| What happens when no name matches? | The first listed vhost for the matching address and port is used. | The default server for that port is used; without an explicit default, ordering determines the fallback. |
| How do you inspect the parsed setup? | apachectl -S on Unix-like systems or httpd.exe -S on Windows. |
nginx -t validates syntax; nginx -T prints the active, included configuration. |
| What changes for HTTPS? | Use a separate port-443 virtual host with matching names and certificates. | SNI can select a server block during the TLS handshake before the HTTP Host header is processed. |
| How can routing be proven? | Give the vhost distinct access and error logs and verify a deliberate 404. | Use distinct logs in each server block and verify the same deliberate 404. |
Complete Apache repair procedure
- Resolve
example.comA and AAAA records and compare them with the server’s public addresses. - Open the active Apache site file and add
ServerName example.complusServerAlias www.example.comto the port-80 vhost. - Check that the vhost’s address and port match the socket Apache listens on.
- Add the same names to the correct port-443 vhost and verify that the certificate covers the apex.
- Run
apachectl -Sorhttpd.exe -Sand resolve duplicate names, missing files, or an unexpected first vhost. - Validate syntax, reload Apache, and repeat the parsed-configuration inspection.
- Request a deliberately nonexistent path over HTTP and HTTPS, then confirm both requests in the intended vhost logs.
Complete Nginx repair procedure
- Resolve the apex A and AAAA records and verify that both protocols reach the intended machine.
- In the port-80 block, set
server_name example.com www.example.com;and confirm the correctroot. - Check the
listenaddress and port against the active sockets. - In the TLS block, repeat the complete
server_namelist, uselisten 443 ssl;, and verify the certificate and key. - Run
nginx -t; if it passes, runnginx -Tand check the effective order, included files, and duplicate names. - Reload Nginx only after the active configuration contains the intended blocks.
- Send a known-404 request to each hostname over both protocols and verify the access and error logs.
Common failure branches and their fixes
The apex resolves to the wrong address
Fix the apex A or AAAA record at the DNS provider. Do not compensate by changing DocumentRoot; that change affects only requests that already reach this server.
www works but the apex shows the default page
Add the apex to Apache’s ServerName or ServerAlias, or to Nginx’s server_name, then inspect the parsed configuration. The default page indicates an unmatched name when DNS already points to the machine.
HTTP works but HTTPS shows another site
Inspect the port-443 listener, SNI-selected block, certificate names, and TLS virtual-host order. Ensure the apex is declared in the HTTPS configuration, not only in the port-80 configuration.
The edited file is not reflected in diagnostics
The file may not be enabled, included, or successfully loaded. Apache’s -S output and Nginx’s -T output reveal the files the daemon actually parsed. Correct inclusion or syntax errors, reload, and inspect again.
One IPv6 network gets the wrong site
Compare the AAAA result with the IPv6 listener and TLS configuration. If IPv6 reaches a different host or a block without the apex name, IPv4 tests can look healthy while IPv6 visitors receive the fallback site.
The homepage looks right but routing is still uncertain
Use a unique nonexistent path and check per-vhost logs. A known 404 identifies the server that handled the request without relying on cached or application-generated homepage content.
Final verification checklist
- The apex A record points to the intended IPv4 address.
- The apex AAAA record, if present, points to an IPv6 listener configured for the same site.
- The web server listens on the address and port used by the DNS results.
- Both
example.comandwww.example.comare explicitly declared for HTTP. - Both names are explicitly declared for HTTPS.
- The certificate presented for the apex includes the apex name.
- Apache’s
-Sor Nginx’s-Toutput shows the intended blocks and no conflicting duplicate. - The daemon was reloaded after validation.
- A deliberate 404 appears in the intended virtual host’s access log for each protocol.
When these checks pass, a root-domain request cannot silently depend on whichever site happens to be first. DNS directs the name to the correct machine, the listener accepts the connection, the hostname declaration selects the intended virtual host, TLS selects the correct HTTPS configuration, and the logs provide proof of the route.
Recommended Free Tools
Quick Recap
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.

