Navigate to > Web Server > Application Development .
Finding a fix for .shtml files that won't display properly usually boils down to one simple thing: isn't enabled on your web server.
Then, set execute permission on the SHTML file: view shtml fix
The most common reason for SHTML files not rendering is that Apache is not configured to enable Includes for that directory. Step 1: Enable mod_include
The web server does not recognize .shtml as an executable file type.
: First, ensure the module that handles SSI is enabled. For Apache, this is mod_include . This can usually be done by uncommenting or adding the following line in your main httpd.conf file, or by running a command: Navigate to > Web Server > Application Development
If you have updated your server configurations but the file still fails to load properly, check for these three common infrastructure issues: Correct Syntax Usage
Nginx is a high-performance web server known for its speed and low memory usage. Here’s how to enable SSI for SHTML files.
Check the path inside <!--#include virtual="..." --> : Then, set execute permission on the SHTML file:
An .shtml file is a standard HTML document that contains Server Side Includes (SSI) directives. SSI is a simple server-side scripting language used to insert the contents of one file into another. For example, a developer might use SSI to include a universal navigation bar ( ) across hundreds of pages.
If you downloaded an SHTML file to your local computer and it looks broken when opened in Google Chrome, Mozilla Firefox, or Microsoft Edge, this is normal behavior. Browsers cannot parse server-side code natively.
Open your Nginx configuration file (usually located in /etc/nginx/sites-available/ ).
If the footer itself contains SSI directives (e.g., a sub-include for a copyright notice), ensure that the server allows nested includes (most do). However, beware of the path context: inside the footer, use virtual paths to avoid confusion about the current directory.