I am trying to understand the following configuration (specific to FollowSymlinks and SymlinksIfOwnerMatch directives) in Directory section of an httpd.conf file:

<Directory "/home">
 Options +All -FollowSymLinks +IncludesNOEXEC -Indexes +MultiViews +SymLinksIfOwnerMatch
 AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch

Based on my understanding, it first disables FollowSymLinks and enables SymLinksIfOwnerMatch at the httpd.conf level and it applies to all the files and subdirectories present inside, /home.

The next directive, AllowOverride. By writing "All", it allows all the Directives belonging to FileInfo, AuthConfig, Indexes, Limit to be overriden by .htaccess files.

It explicitly mentions the list of Options that can be overriden by the .htaccess files.

So, it allows SymLinksIfOwnerMatch to be overriden by the .htaccess file.

Is my understanding correct?

Why does it allow SymLinksIfOwnerMatch to be overriden by the .htaccess file if it has explicitly mentioned in the line above that the SymLinksIfOwnerMatch is enabled?



If you think of "allow override" as "allow user to change the setting" instead, it may become clearer. In this case, the user may disable SymLinksIfOwnerMatch in their .htaccess file.

  • Thanks. So, it means that my understanding is indeed correct. All the options listed there can be overriden by .htaccess files. However, why enable an option and also allow it to be overriden at the same time?
    – Neon Flash
    Apr 8 '13 at 4:36
  • 1
    Why is something only the server admin can answer. My guess is "because many users asked for it to be turned on, and one or a few users asked for it to be turned off".
    – Jenny D
    Apr 8 '13 at 6:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.