1 / 54

What's Apache?

What's Apache?. Apache is open source, powerful, free and runs on more than half of all Internet servers. Let's take a quick look at how to get your Apache server up and running. Downloading Apache.

Download Presentation

What's Apache?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What's Apache? Apache is open source, powerful, free and runs on more than half of all Internet servers. Let's take a quick look at how to get your Apache server up and running.

  2. Downloading Apache Obviously, the first thing you need to do is download the necessary source files. Various mirrors provide the download, so where you get the files is largely a matter of preference. (I tend to download from mirrors because there's not as much traffic as on the main site.) The files are available from the Apache Web site, as well.

  3. Apache installation and setup Now that you've downloaded the software, you can begin the installation, which you'll handle completely from the command line. First, extract the files with the following commands: $ tar -xvzf apache-version.tar.gz $ cd apache-version/

  4. Apache installation and setup cont. Now that the source is untarred and ready to go, you can begin the configuration, which offers a wide range of customisation options. If you run the command ./configure --help you can see a list of Apache's configuration options, which are divided into various sections: * General options * Stand-alone options * Installation layout options * Configuration options * suEXEC options * Deprecated options

  5. Installing Apache on Windows XP Instructions: To download Apache, go to http://www.apache.org/dyn/closer.cgi, choose a mirror and go to the /dist/httpd/binaries/win32 directory. From this directory download the MSI file with no source code included, i.e. the file name should look like apache_1.3.x-win32-x86-no_src.msi (where x is any number).

  6. Step 2 - Installing the Apache Web Server • Double click the apache_1.3.xx-win32-x86-no_src.msi file (where xx can be any number). • The “Apache HTTP Server Installation Wizard” will appear. Fill in the fields as below but replace the Server Name with the name of your computer and the email address with your email address. Make sure you have selected “Run as a service for all users” and click “Next”.

  7. The next option relates to the type of setup. As shown below, make sure “complete” is selected and click “next”.

  8. When asked which folder to install to, choose the default (C:\Program Files\Apache Group) • and click “Next” then “Install”.

  9. To test the Apache installation go to http://127.0.0.1/ using a web browser of your choice.If you can see the “Test Page for Apache Installation” (like the one shown in the image below) you have successfully installed Apache.

  10. Apache Configurations

  11. 1.AcceptFilter directive Syntax: AcceptFilter on|off Default: AcceptFilter on Context: server config Status: core Compatibility: AcceptFilter is available in Apache 1.3.22 and later AcceptFilter controls a BSD specific filter optimization

  12. 2.AcceptMutex directive • AcceptMutex directive • Syntax: AcceptMutex uslock|pthread|sysvsem|fcntl|flock|os2sem|tpfcore|none|default • Default: AcceptMutex default • Context: server config • Status: core • Compatibility: AcceptMutex is available in Apache 1.3.21 and later. • AcceptMutex controls which accept() mutex method Apache will us

  13. 3.AccessConfig directive • Syntax: AccessConfig file-path|directory-path|wildcard-path • Default: AccessConfig conf/access.conf • Context: server config, virtual host • Status: core • Compatibility: The ability to specify a directory, rather than a file name, is only available in Apache 1.3.13 and later. This directive will be eliminated in version 2.0.

  14. This feature can be disabled using: AccessConfig /dev/null Or, on Win32 servers, AccessConfig nul Historically, this file only contained <Directory> sections; in fact it can now contain any server directive allowed in the server config context. However, since Apache version 1.3.4, the default access.conf file which ships with Apache contains only comments.

  15. Syntax: AccessFileName filename [filename] ... Default: AccessFileName .htaccess Context: server config, virtual host Status: core Compatibility: AccessFileName can accept more than one filename only in Apache 1.3 and later 4.AccessFileName directive

  16. For example: AccessFileName .acl before returning the document /usr/local/web/index.html, the server will read /.acl, /usr/.acl, /usr/local/.acl and /usr/local/web/.acl for directives, unless they have been disabled with <Directory /> AllowOverride None </Directory>

  17. Syntax: AddDefaultCharset On|Off|charset Context: all Status: core Default: AddDefaultCharset Off Compatibility: AddDefaultCharset is only available in Apache 1.3.12 and later 5.AddDefaultCharset directive

  18. AddDefaultCharset On enables Apache's internal default charset of iso-8859-1 as required by the directive. You can also specify an alternate charset to be used. For example: AddDefaultCharset utf-8

  19. Syntax: AddModule module [module] ... Context: server config Status: core Compatibility: AddModule is only available in Apache 1.2 and later For example: AddModule mod_include.c 6.AddModule directive

  20. Syntax: AllowOverride All|None|directive-type [directive-type] ... Default: AllowOverride All Context: directory Status: core AllowOverride is only valid in <Directory> sections, not in <Location> or <Files> sections, as implied by the Context section above 7.AllowOverride directive

  21. AuthName directive Syntax: AuthName auth-domain Context: directory, .htaccess Override: AuthConfig Status: cor sets the name of the authorization realm for a directory 8.AuthName directive

  22. It must be accompanied by AuthType and Require directives, and directives such as AuthUserFile and AuthGroupFile to work. For example: AuthName "Top Secret" The string provided for the AuthName is what will appear in the password dialog provided by most browsers.

  23. Syntax: AuthDigestRealmSeed secret-real-string Context: directory, .htaccess Override: AuthConfig Status: core sets a per realm secret nonce prefix which is used to ensure that a captured username, password and realm string during a Digest exchange cannot be replayed at other places. 9.AuthDigestRealmSeed directive

  24. Syntax: AuthType Basic|Digest Context: directory, .htaccess Override: AuthConfig Status: core This directive selects the type of user authentication for a directory. Only Basic and Digest are currently implemented. It must be accompanied by AuthName and Require directives, and directives such as AuthUserFile and AuthGroupFile to work. 10.AuthType directive

  25. BindAddress directive Syntax: BindAddress *|IP-address|domain-name Default: BindAddress * Context: server config Status: core Compatibility: BindAddress is deprecated and will be eliminated in Apache 2.0. 11.BindAddress directive

  26. For example:BindAddress 192.168.15.48BindAddress can be used as an alternative method for supporting virtual hosts using multiple independent servers, instead of using <VirtualHost> sections

  27. 12.BS2000Account directive • Syntax: BS2000Account account • Default: none • Context: server config • Status: core • Compatibility: BS2000Account is only available for BS2000 machines, as of Apache 1.3 and later.

  28. BS2000Account directive is available for BS2000 hosts only.It must be used to define the account number for the non-privileged apache server user (which was configured using the User directive).

  29. 13.CGICommandArgs directive • Syntax: CGICommandArgs On|Off • Default: CGICommandArgs On • Context: directory, .htaccess • Override: Options • Status: core • Compatibility: Available in Apache 1.3.24 and later.

  30. 14.ClearModuleList directive • Syntax: ClearModuleList • Context: server config • Status: core • Compatibility: ClearModuleList is only available in Apache 1.2 and later. • This directive clears the list. It is assumed that the list will then be re-populated using the AddModule directive.

  31. 15.ContentDigest directive • Syntax: ContentDigest on|off • Default: ContentDigest off • Context: server config, virtual host, directory, .htaccess • Override: Options • Status: experimental • Compatibility: ContentDigest is only available in Apache 1.1 and later • This directive enables the generation of Content-MD5 headers as defined in RFC1864 respectively RFC2068

  32. 16.CoreDumpDirectory directive • Syntax: CoreDumpDirectory directory-path • Default: the same location as ServerRoot • Context: server config • Status: core • This controls the directory to which Apache attempts to switch before dumping core.

  33. 17.DefaultType directive • Syntax: DefaultType MIME-type • Default: DefaultType text/plain • Context: server config, virtual host, directory, .htaccess • Override: FileInfo • Status: core

  34. There will be times when the server is asked to provide a document whose type cannot be determined by its MIME types mappings. • The server must inform the client of the content-type of the document, so in the event of an unknown type it uses the DefaultType. For example: • DefaultType image/gif

  35. 18.DirectoryMatch • <DirectoryMatch> • Syntax: <DirectoryMatch regex> ... </DirectoryMatch> • Context: server config, virtual host • Status: Core. • Compatibility: Available in Apache 1.3 and late

  36. <DirectoryMatch> and </DirectoryMatch> are used to enclose a group of directives which will apply only to the named directory and sub-directories of that directory, the same as <Directory>. However, it takes as an argument a regular expression. • For example: <DirectoryMatch "^/www/.*/[0-9]{3}">

  37. 19.DocumentRoot directive • DocumentRoot directive • Syntax: DocumentRoot directory-path • Default: DocumentRoot /usr/local/apache/htdocs • Context: server config, virtual host • Status: core • This directive sets the directory from which httpd will serve files.

  38. Unless matched by a directive like Alias, the server appends the path from the requested URL to the document root to make the path to the document. • Example: DocumentRoot /usr/web then an access to http://www.my.host.com/index.html refers to /usr/web/index.html.

  39. 20.EBCDICConvert • Syntax: EBCDICConvert On|Off[=direction] extension [extension] ... • Context: server config, virtual host, directory, .htaccess • Status: core • Override: FileInfo • Compatibility: The configurable EBCDIC conversion is only available in Apache 1.3.19 and later.

  40. The EBCDICConvert directive maps the given filename extensions to the specified conversion setting (On or Off). File extensions may be specified with or without a leading dot

  41. 21.EnableExceptionHook directive • Syntax: EnableExceptionHook on|off • Default: EnableExceptionHook off • Context: server config • Status: core • Compatibility: EnableExceptionHook is available in Apache 1.3.30 and later • EnableExceptionHook controls whether or not an exception hook implemented by a module will be called after a child process crash.

  42. 22.<Files> directive • Syntax: <Files filename> ... </Files> • Context: server config, virtual host, .htaccess • Status: core • Compatibility: only available in Apache 1.2 and above • The <Files> directive provides for access control by filename.

  43. 23.<FilesMatch> • Syntax: <FilesMatch regex> ... </FilesMatch> • Context: server config, virtual host, .htaccess • Status: core • Compatibility: only available in Apache 1.3 and above. • The <FilesMatch> directive provides for access control by filename, just as the <Files> directive does. However, it accepts a regular expression. For example: • <FilesMatch "\.(gif|jpe?g|png)$"> • would match most common Internet graphics formats.

  44. 24.HostnameLookups directive • Syntax: HostnameLookups on|off|double • Default: HostnameLookups off • Context: server config, virtual host, directory • Status: core • Compatibility: double available only in Apache 1.3 and above. • Compatibility: Default was on prior to Apache 1.3.

  45. This directive enables DNS lookups so that host names can be logged (and passed to CGIs/SSIs in REMOTE_HOST). • At least one of the ip addresses in the forward lookup must match the original address. (In "tcpwrappers" terminology this is called PARANOID.)

  46. 25.IdentityCheck directive • Syntax: IdentityCheck on|off • Default: IdentityCheck off • Context: server config, virtual host, directory • Status: core • This directive enables RFC1413-compliant logging of the remote user name for each connection, where the client machine runs identd or something similar. This information is logged in the access log.

  47. 26.<IfDefine> directive • Syntax: <IfDefine [!]parameter-name> ... </IfDefine> • Default: None • Context: all • Status: Core • Compatibility: <IfDefine> is only available in 1.3.1 and later. • The <IfDefine test>...</IfDefine> section is used to mark directives that are conditional. The directives within an IfDefine section are only processed if the test is true. If test is false, everything between the start and end markers is ignored. • The test in the <IfDefine> section directive can be one of two forms: • * parameter-name • * !parameter-name

  48. 27.<IfModule> directive • Syntax: <IfModule [!]module-name> ... </IfModule> • Default: None • Context: all • Status: Core • Compatibility: IfModule is only available in 1.2 and later.

  49. The <IfModule test>...</IfModule> section is used to mark directives that are conditional. The directives within an IfModule section are only processed if the test is true. If test is false, everything between the start and end markers is ignored. • The test in the <IfModule> section directive can be one of two forms: • * module name * !module name

  50. 28.KeepAliveTimeout directive • Syntax: KeepAliveTimeout seconds • Default: KeepAliveTimeout 15 • Context: server config • Status: Core • Compatibility: KeepAliveTimeout is only available in Apache 1.1 and later. • The number of seconds Apache will wait for a subsequent request before closing the connection.

More Related