Upload
ankush-jain
View
1.648
Download
1
Tags:
Embed Size (px)
DESCRIPTION
Learn Apache installation with help of screenshots and also learn various configurations in Apache
Citation preview
APACHE
What is Apache?
• is a powerful, flexible, HTTP/1.1 compliant web server
• implements the latest protocols, including HTTP/1.1 (RFC2616)
• is highly configurable and extensible with third-party modules
• can be customised by writing 'modules' using the Apache module API
• provides full source code and comes with an unrestrictive license
• runs on Windows NT/9x, Netware 5.x and above, OS/2, and most versions of Unix, as well as several other operating systems
• is actively being developed
• encourages user feedback through new ideas, bug reports and patches
• implements many frequently requested features, including:
INSTALLATIONS
&
CONFIGURATIIONS
-PRESENTED BY H. ANKUSH. JAIN
INSTALLATION
Step 1: Double-Click the Apache Executable and Get the Welcome
Screen
Click Next
Step 2: Read the License
Make sure there's nothing that you can't agree to. Once you accept, you'll be held to the terms of the license.
Step 3: Read the README File
Scan the readme file to make sure there aren't any late minute bugs that would make this version crash on your computer.
Step 4: Provide Your Server Information
Fill in your Network Domain, server name, and administrator's email address. If this is not going to be hosted on the Internet, you can use "localhost" (without the quotation marks) as the network and server name.
Step 5: Typical Setup?
I usually select custom, so I know exactly what is being installed. But choosing typical is a lot faster.
Step 6: Review Custom Options
If you chose "Custom" review the options you have. Don't turn off any required modules. I recommend reading the description of all other modules, so you know what is being installed.
Step 7: You're Done
Click Finish and go check out your new Apache Web server.
CONFIGURATIONS
1.AcceptFilter directiveSyntax: 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
2.AcceptMutex directiveAcceptMutex 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
3.AccessConfig directiveSyntax: 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.
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.
3.AccessConfig directive
4.AccessFileName directive
Syntax: AccessFileName filename [filename] ...
Default: AccessFileName .htaccessContext: server config, virtual host
Status: coreCompatibility: AccessFileName can
accept more than one filename only in Apache 1.3 and later
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>
4.AccessFileName directive
5.AddDefaultCharset directive
Syntax: AddDefaultCharset On|Off|charsetContext: allStatus: core
Default: AddDefaultCharset OffCompatibility: AddDefaultCharset is only
available in Apache 1.3.12 and later
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
5.AddDefaultCharset directive
6.AddModule directive
Syntax: AddModule module [module] ...Context: server config
Status: coreCompatibility: AddModule is only available in Apache 1.2 and later
For example: AddModule mod_include.c
7.AllowOverride directive
Syntax: AllowOverride All|None|directive-type [directive-type] ...
Default: AllowOverride AllContext: directory
Status: coreAllowOverride is only valid in
<Directory> sections, not in <Location> or <Files> sections, as implied by the
Context section above
8.AuthName directive
AuthName directiveSyntax: AuthName auth-domain
Context: directory, .htaccessOverride: AuthConfig
Status: cor sets the name of the authorization
realm for a directory
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.
8.AuthName directive
9.AuthDigestRealmSeed directive
Syntax: AuthDigestRealmSeed secret-real-string
Context: directory, .htaccessOverride: 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.
10.AuthType directiveSyntax: AuthType Basic|DigestContext: directory, .htaccess
Override: AuthConfigStatus: 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.
11.BindAddress directive
BindAddress directiveSyntax: BindAddress *|IP-address|
domain-nameDefault: BindAddress *Context: server config
Status: coreCompatibility: BindAddress is deprecated
and will be eliminated in Apache 2.0.
11.BindAddress directive
For example:BindAddress 192.168.15.48
BindAddress can be used as an alternative method for supporting
virtual hosts using multiple independent servers, instead of using
<VirtualHost> sections
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.
12.BS2000Account directive
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).
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.
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.
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
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.
17.DefaultType directive
Syntax: DefaultType MIME-type
Default: DefaultType text/plain
Context: server config, virtual host, directory, .htaccess
Override: FileInfo
Status: core
17.DefaultType directive
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
18.DirectoryMatch
<DirectoryMatch>
Syntax: <DirectoryMatch regex> ... </DirectoryMatch>
Context: server config, virtual host
Status: Core.
Compatibility: Available in Apache 1.3 and late
18.DirectoryMatch
<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}">
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.
19.DocumentRoot directive
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.
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.
20.EBCDICConvert
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
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.
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.
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.
23.<FilesMatch>
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.
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.
24.HostnameLookups directive
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.)
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.
26.<IfDefine> directiveSyntax: <IfDefine [!]parameter-
name> ... </IfDefine>
Default: None
Context: all
Status: Core
Compatibility: <IfDefine> is only available in 1.3.1 and later.
26.<IfDefine> directive
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
26.<IfDefine> directive
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
27.<IfModule> directive
Syntax: <IfModule [!]module-name> ... </IfModule>
Default: None
Context: all
Status: Core
Compatibility: IfModule is only available in 1.2 and later.
27.<IfModule> directiveThe <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
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.
29.<Limit> directive
Syntax: <Limit method [method] ... > ... </Limit>
Context: any
Status: core
Access controls are normally effective for all access methods, and this is the usual desired behavior. In the general case, access control directives should not be placed within a <limit> section
30.<LimitExcept> directive
<LimitExcept> directive
Syntax: <LimitExcept method [method] ... > ... </LimitExcept>
Context: any
Status: core
Compatibility: Available in Apache 1.3.5 and later
30.<LimitExcept> directive
<LimitExcept> and </LimitExcept> are used to enclose a group of access control
directives which will then apply to any HTTP access method not listed in the arguments; i.e., it is the opposite of a <Limit> section and can be used to control both standard and nonstandard/unrecognized methods. See the documentation for <Limit> for
more details.For
30.<LimitExcept> directive
example:
<LimitExcept POST GET>
Require valid-user
</LimitExcept>
THANK YOU