LiteSpeed Web Server Troubleshooting: 503 Errors and PHP
We recently added a wiki to guide users through troubleshooting 503 errors.
Troubleshooting LiteSpeed Web Server is not too different from troubleshooting Apache. The concepts — checking error logs and isolating possible causes — are always going to be the same. We are providing these wikis both to illustrate troubleshooting best practices, but also to highlight specific places where LSWS differs from Apache.
Differences Between LSWS and Apache
The wiki highlights a few differences between LiteSpeed and Apache:
- Error logs: When using Apache configurations, the main error log is located in the same place the Apache error log normally is. LSWS, however, also includes a stderr.log containing errors from the standard error stream. The standard error log is found in the same directory as the error log and can give you extra information about errors in the error log.
- Parsing error log entries: The wiki contains a variety of information explaining LiteSpeed error messages, including how to tell if a process exited or crashed.
- Opcode caching: Opcode caching is not a LiteSpeed-specifc feature, but, because LSWS’s suEXEC modes allow for opcode caching even in shared hosting, LSWS users are much more likely to use opcode caching than Apache users. The variety of opcode caches available on the Internet all have their individual problems. We find opcode caching to be a frequent cause of 503 errors (and PHP problems, in general). One of the first steps we often take when trying to address a strange PHP problem is to turn off the opcode cache or try switching to a different opcode cache.
We hope the wiki will help a lot of users who are having trouble navigating the infinitude of possible website errors. Please let us know what wikis you’d like to see in the future.