Apache: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80 / AH00015: Unable to open logs
Another process (Nginx, another Apache, Skype/IIS-like service) already listens on the port Apache wants.
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80AH00072: make_sock: could not bind to address [::]:80AH00015: Unable to open logsno listening sockets available, shutting down(98)Address already in use: AH00072 Meaning
Find the owner: sudo ss -ltnp | grep ':80', stop or reconfigure it (change Listen in ports.conf), and start Apache again. A leftover Apache process from a crash can also hold the port: sudo pkill apache2 then start.
Common causes
- Nginx or another web server already on port 80/443
- Stale Apache child processes
- Duplicate
Listendirectives (80 twice) - Docker container publishing the port
- Hot restart race
⚡ Quick fix
sudo ss -ltnp | grep -E ':80|:443'- Stop the other service or change
Listen - Remove duplicate
Listenlines
Detailed fix by platform
Linux
sudo ss -ltnp | grep ':80 ' && sudo systemctl stop nginx
How to diagnose
- Owner — Which process?
- Listen — Duplicates?
- Stale — Old Apache?
🔧 Still not fixed?
Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:
Similar errors
- .htaccess: Invalid command (500 Internal Server Error) Apache: [core:alert] /var/www/html/.htaccess: Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration
- AH00015: Unable to open logs Apache: AH00091: apache2: could not open error log file /var/log/apache2/error.log. AH00015: Unable to open logs (Permission denied)
- AH00112: DocumentRoot does not exist Apache: AH00112: Warning: DocumentRoot [/var/www/example.com/public_html] does not exist
Most viewed in Nginx / Apache
- nginx: [emerg] unknown directive Nginx: nginx: [emerg] unknown directive "x" in /etc/nginx/sites-enabled/x:12 — configuration file test failed
- upstream timed out Nginx: upstream timed out (110: Connection timed out) while reading response header from upstream
- AH00898: Error reading from remote server (502 Proxy Error) Apache: [proxy_http:error] AH01102: error reading status line from remote server 127.0.0.1:3000 / AH00898: Error reading from remote server returned by /api
Other ways to find it
Where this error sits
Origin: Edge & web server. Errors that are often confused with or caused by this one (click to open):
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
💬 What worked for others
No tips yet — did something else fix this for you?
Share what worked for you
Tips are checked by an editor before they appear. Links are removed.
Report a correction or suggest an improvement
Last updated 5 Nov 2026