Access Gateway Apache restart fails with 'Address already in use' on port 80
search cancel

Access Gateway Apache restart fails with 'Address already in use' on port 80

book

Article ID: 442130

calendar_today

Updated On:

Products

SITEMINDER CA Single Sign On Secure Proxy Server (SiteMinder)

Issue/Introduction

When attempting to perform a graceful restart or a standard start of the SiteMinder Access Gateway (SPS) using a Service Account, the operation fails with the following errors in the console or logs:

  • (98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
  • no listening sockets available, shutting down
  • AH00015: Unable to open logs
  • httpd not running, trying to start
FAILED! => 
{
"changed": true,
"cmd": "/opt/CA/secure-proxy/httpd/bin/apachectl graceful",
"delta": "0:00:00.012345",
"end": "2026-01-01 01:01:01.123456",
"msg": "non-zero return code",
"rc": 1,
"start": "2026-01-01 01:01:01.12345",
"stderr": "[Thu Jan 01 01:01:01.123456 2026] [so:warn] [pid 1122334455:tid 1234567890] AH01574: module deflate_module is already loaded, skipping\n[Thu Jan 01 01:01:01.123456 2026] [so:warn] [pid 1122334455:tid 1234567890] AH01574: module headers_module is already loaded, skipping\n(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80\nno listening sockets available, shutting down\nAH00015: Unable to open logs",
"stderr_lines": [
"[Thu Jan 01 01:01:01.123456 2026] [so:warn] [pid 1122334455:tid 1234567890] AH01574: module deflate_module is already loaded, skipping",
"[Thu Jan 01 01:01:01.123456 2026] [so:warn] [pid 1122334455:tid 1234567890] AH01574: module headers_module is already loaded, skipping",
"(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80",
"no listening sockets available, shutting down",
"AH00015: Unable to open logs"
],
"stdout": "httpd not running, trying to start",
"stdout_lines": [
"httpd not running, trying to start"
]
}

 

Environment

Product: All version of Access Gateway

Operating System: Linux

Cause

This issue is typically caused by one of the following:

  1. Orphaned Processes: A previous instance of Apache (httpd) did not shut down completely and is still bound to port 80.
  2. Permission Mismatch: The SiteMinder instance was originally started by the root user. When a non-root Service Account attempts a graceful restart, it lacks the necessary permissions to signal or terminate the root-owned parent processes.
  3. Incorrect Script Usage: Using apachectl or httpd directly instead of the supported sps-ctl management scripts can lead to inconsistent state management.

Resolution

1. Identify and Terminate Conflicting Processes

Identify the process currently holding port 80:

netstat -anp | grep :80
# OR
ss -tanp | grep 80

If an orphaned httpd process is identified, terminate it using the PID found in the previous step:

Run command to gracefully shutdown the process.
# If that does not work then kill the process.
# Further determination may be required if a new application is deployed that will bind to the conflicting port so it can be configured with different port.
kill -9 <PID>

 

2. Verify Directory Ownership

Ensure that the Service Account user has full recursive ownership and write permissions for the entire Access Gateway installation path, specifically the log directories

 

3. Use Supported Management Scripts

Avoid using apachectl directly. Always use the provided sps-ctl script to manage services:

  1. Navigate to the Access Gateway bin directory.
  2. Stop the services: ./sps-ctl stop
  3. Start the services: ./sps-ctl start

4. Automation Considerations

If using automation tools like Ansible, ensure the playbooks call sps-ctl and include logic to verify that processes have fully exited before attempting a restart.