Apache HTTP Server

From DreamHost
Jump to: navigation, search

Overview

Apache HTTP Server is an open source HTTP web server for UNIX-like systems (BSD, Linux, and UNIX), Microsoft Windows, and other platforms.

DreamHost customers have only limited access to Apache settings on shared servers (via the panel). For example, certain options can be changed through the Remap Sub-directories page at (Panel > 'Domains' > 'Remap Sub-Dir') and .htaccess files.

DreamHost Apache version

DreamHost currently runs version 2.2.22 of the open source HTTP Server. In the near future, DreamHost will update Apache to version 2.4.

In the past, one could determine information about the web server from the HTTP response headers through the "Server" header. However for security reasons, it was decided to set ServerTokens to "Prod" and as a result, the value of this header only returns "Apache". It cannot be modified through per-directory configuration files (.htaccess).

For example, in the past, running curl -Is to your site gives you the following response:

$ curl -Is  http://websitehelp.support |grep Server
Server: Apache/1.3.37 (Unix) mod_throttle/3.1.2 DAV/1.0.3 mod_fastcgi/2.4.2 mod_gzip/1.3.26.1a PHP/4.4.7  mod_ssl/2.8.22 OpenSSL/0.9.7e

If you run this same command now, the only response is ‘Apache’:

$ curl -Is  http://websitehelp.support |grep Server
Server: Apache

To find the version of apache currently running, use:

$ dpkg -l ndn-apache22

Apache modules for DreamHost

Please note that some of the modules only work if they are enabled via the panel (e.g., Page Speed Optimization, CloudFlare, Passenger, and so on) and some modules depend on what type of server you are on.

If you need the xsendfile module enabled, you will need to contact support on the (Panel > ‘Support’ > ‘Contact Support’) page. Please be sure to mention which domain on which you would like it enabled. Also, if you need the proxy module, that can only be enabled on a VPS or a dedicated server.

For further information on Apache modules, visit the following page:

To determine precisely which modules are loaded for your server, you can explicitly test each one.

Create a temporary directory with two files, index.shtml:

<!--#printenv -->

and an .htaccess file.

Then, navigate with your browser to your example.com/tmp directory and look for all the lines beginning with "MOD_". If you use the above method to check the modules, the request will only show you what is enabled. The easiest way to read the output of which modules are enabled is to use curl. For example, run this via SSH to print the modules listed vertically:

curl -v http://www.example.com/tmp/index.shtml

See also