Apache HTTP Server: Notes about Compatibility with NCSA's Server
- As of Apache 1.3.1, methods named in a section must be listed in upper-case. Lower- or mixed-case method names will result in a configuration error.
- The basic mod_auth
AuthGroupFile-specified group file format allows commas between user names – Apache does not.
- If you follow the NCSA guidelines for setting up access restrictions based on client domain, you may well have added entries for
AuthType, AuthName, AuthUserFileor
AuthGroupFile. None of these are needed (or appropriate) for restricting access based on client domain. When Apache sees
AuthTypeit (reasonably) assumes you are using some authorization type based on username and password. Please remove
AuthType, it’s unnecessary even for NCSA.
OldScriptAliasis no longer supported.
exec cgi=""produces reasonable malformed header responses when used to invoke non-CGI scripts. The NCSA code ignores the missing header (bad idea).
Solution: write CGI to the CGI spec and use
include virtual, or use
- Icons for FancyIndexing broken – well, no, they’re not broken, we’ve just upgraded the icons from flat .xbm files to pretty and much smaller .gif files, courtesy of Kevin Hughes at EIT. If you are using the same srm.conf from an old distribution, make sure you add the new AddIcon, AddIconByType, and DefaultIcon directives.
- Apache versions before 1.2b1 will ignore the last line of configuration files if the last line does not have a trailing newline. This affects configuration files (httpd.conf, access.conf and srm.conf), and htpasswd and htgroup files.
- Apache does not permit commas delimiting the methods in .
- Apache’s treats all addresses as “optional” (i.e., the server should continue booting if it can’t resolve the address). Whereas in NCSA the default is to fail booting unless an added
optionalkeyword is included.
- Apache does not implement
- Apache (as of 1.3) always performs the equivalent of
minimalis not an option to
- To embed spaces in directive arguments NCSA used a backslash before the space. Apache treats backslashes as normal characters. To embed spaces surround the argument with double-quotes instead.
- Apache does not implement the NCSA
refererdirective. See PR#968 for a few brief suggestions on alternative ways to implement the same thing under Apache.
- Apache does not allow ServerRoot settings inside a VirtualHost container. There is only one global ServerRoot in Apache; any desired changes in paths for virtual hosts need to be made with the explicit directives, e.g., DocumentRoot, TransferLog, etc.
AddTypedirective cannot be used to set the type of particular files. Instead, you can scope you directives using blocks.