Apache
This article is a stub. You can help the IndieWeb wiki by expanding it.
Apache is widely deployed open source web server software.
HTTP 406 Not Acceptable Error
In some cases, Apache returns HTTP 406 when fetched from a client that does not include */*
in the Accept header. This is due to a common misconfiguration where PHP is enabled by using the AddType
declaration instead of a proper solution.
This error surfaced when XRay was unable to fetch posts on adactio.com because XRay does not include */*
in its Accept header. The fix was to remove the AddType
declaration and include the below instead.
<Files "*.php"> MultiviewsMatch Any </Files>
Permissions
Summary (from serverfault thread):
- Apache usually runs as the www-data, which will at the very least need read access to files
- βApplicationβ files (e.g. *.php) donβt need execute permissions as theyβre not directly executed by the web server, they only need read permissions
- Your user should own the files
- The www-data user should own the group, which should have read and execute (why execute?) permissions
- Any files or folders which will be changed by apache need to have write (+w) permissions for the group owner
- Run
umask XXX
to set the default permissions for newly created files.umask 007
sets permissions to read+write for owner and group, no permissions for others, which is a sensible default
wikipedia has a clear explanation of the unix permissions shorthand.
See Also
- deployment
- lighttpd
- nginx
- OpenLiteSpeed
- mod_security
- Tuning/optimiziation guide: https://github.com/ptudor/betterhttpd
- Criticism: name has a bad history of cultural appropriation: https://blog.nativesintech.org/apache-appropriation/