Harvard Extension School
CSCI S-12 Fundamentals of Web Site Development | Spring 2020

## Problems You will encounter when using .htaccess files (Internal Server Error 500)

500 Internal Server Error
If you see begin seeing 500 Internal Server Error responses from the server after you have created or edited an `.htaccess` file, the most likely cause of the problem is incorrect permissions and/or an error in the directive syntax.

- Permissions on the `.htaccess` file are not set correctly. Just like HTML and image files, the server must be able to read the `.htaccess` file. The simplest way to allow that is to make your `.htaccess` file readable by "other".

    cscie12students% pwd
    /home/courses/j/h/jharvard/public_html
    cscie12students% ls -l .htaccess
    -rw-------   1 jharvard  founder         349 Nov 27 00:03 .htaccess
    cscie12students% chmod o+r .htaccess
    cscie12students% ls -l ~/public_html/.htaccess
    -rw----r--   1 jharvard  founder         349 Nov 27 00:03 .htaccess

- Syntax Error. An error in the syntax of a directive the `.htaccess` file will result in a 500 Internal Server Error. In addition, correct usage of a directive that is not allowed in the `.htaccess` file will result in a 500 status code. Whether or not a directive is allowed depends upon the server configuration file (httpd.conf; AllowOverride) and the directive itself.

Copyright © David Heitmeyer