Resolution
Option 1
If the Server had unexpected downtime, the httpd.pid file can exist when normally it is removed on shutdown. Please review the following information to determine if this option is applicable.
Check the startup.log in httpd for the following log item:
httpd (pid <number>) already running
Although the Gateway process is not running, there is an existing httpd.pid in <tableau_server_data_directory>/tabsvc/logs/httpd/
Please note: It is possible to check the environment variables to find the correct location of the tabsvc/logs/httpd folder such as $TABLEAU_SERVER_DATA_DIR and $TABLEAU_SERVER_DATA_DIR_VERSION.
Perform the following:
- Stop the server using TSM stop.
- Linux: Locate the httpd.pid in <tableau_server_data_directory>/tabsvc/logs/httpd/
Windows: Locate the httpd.pid in <tableau_server_data_directory>\tabsvc\logs\httpd - Manually remove the httpd.pid file.
- Run TSM start to start Tableau Server and use "tsm status -v -u <username>" to confirm the gateway service is up and running.
Option 2
There is a port conflict issue.
Because IIS and Tableau Server's gateway service can both occupy port 80 after a restart or Windows update, remove IIS from the Tableau Server machine or reassign ports. The "netstat -anob" command can be run to see the ports currently in use and what PID is bound to port 80. A PID of 4 is typically IIS.
For more information on errors due to other services running on port 80, please see this additional article.
If SSL is enabled, the Gateway process can be in an error state when port 443 is occupied by another process.