Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.

Similar presentations


Presentation on theme: "1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer."— Presentation transcript:

1 1 Apache

2 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer Protocol (HTTP) web server software package under Linux. ♦ Lessons covered in this module ► Introduction to Apache ► Apache Configuration ► Using Apache

3 3 Apache Lesson 1 - Introduction to Apache Introduction to Apache ♦ Introduction Apache is simpler compared to other web servers. It is a very stable and robust program. It has many modules and directives. Understanding these helps in using the web server effectively. ♦ Topics covered in this lesson ► Apache Features ► Apache Modules ► Apache Configuration

4 4 Apache Topic 1 – Apache Features ♦ Apache is a standards-driven program providing mandated functionality. Its various capabilities ensure its full compliance with version 1.1 of the HTTP protocol. Apache implements all the required functionality described in RFC2616 (the document defining Web server protocol). ♦ Apache has many modules that can he integrated to provide new features. The complete list of Apache's features is very long and may run into many pages. Core Apache HTTP Server features are always available. On the other hand there are many other features available in additional modules.

5 5 Apache Topic 2 – Apache Modules ♦ Apache has many modules that can he integrated to provide new features. Features are characterized by directives or commands. The Apache HTTP Server is distributed with a number of modules. By default around 35 core modules are installed and enabled with the httpd package on Red Hat Linux. ♦ There are many more modules, which are available with Apache, which you can install and use to configure additional features to your HTTP server. You can learn as you work with Apache, the purpose of these modules and their actual use.

6 6 Apache Topic 3 - Apache Configuration ♦ The main configuration file is /etc/httpd/conf/httpd.conf. The root directory of Web server is /etc/httpd, which is divided into three parts: ► /etc/httpd/conf has the configuration files ► /etc/httpd/logs has the logs of Web server and site accessing ► /etc/httpd/modules has the modules, which enable programming in the languages supported by Web server. ♦ Using the default configuration the easiest way to learn how to configure Apache. You can also use a GUI, the HTTP Configuration tool (system-config-httpd for CLI) to configure the Web server.

7 7 Apache Lesson 2 – Apache Configuration ♦ Introduction Many of Apache's configuration options deal with rare cases. Twenty percent of Apache's configuration options do eighty percent of the work. Most options have defaults which make it easy to configure Apache. ♦ Topics covered in this lesson ► Server Configuration ► Namespace Configuration ► Access Configuration

8 8 Apache Topic 1 - Server Configuration ♦ Apache starts with a single master process. The master server reads and processes /etc/httpd/conf/httpd.conf. Then it checks the configuration file and opens its log files. Next it launches sub-processes (child servers) as per process creation directives. ♦ Configuration directives are grouped into three sections: ► Directives that control the global behavior ► Directives that define the parameters of the main server ► Settings for virtual hosts ♦ To configure the Server, edit /etc/httpd/conf/httpd.conf. Before editing httpd.conf, make a copy. Examine the error log. Then restart the httpd process.

9 9 Apache Topic 2 - Namespace Configuration ♦ The Apache filter architecture makes it a powerful application platform. Applications can now easily be implemented within the web server itself. ♦ The Apache Namespace Framework offers a simple, higher-level API (Application Programing Interface). Namespace modules in Apache are: mod_xmlns, mod_publisher, mod_sql, mod_proxy_html, mod_proxy_xml, mod_form. ♦ Namespace support in Apache is an evolving technology, with a small but growing number of applications.

10 10 Apache Topic 3 - Access Configuration ♦ The following directives configure the access to the server and files and directories. ► Order directive controls the order in which allow and deny directives are evaluated. ► Allow specifies which requester can access a given directory. ► Deny specifies who is denied access. ► AccessFileName names the file, which the server should use for access control information in each directory. The default is.htaccess. ► HostnameLookups can be set to on, off or double. If it is on, the server automatically resolves the IP address for each connection.

11 11 Apache Lesson 3 - Using Apache ♦ Introduction Apache has many useful functionalities. Understanding them helps in using Apache for many different purposes like multiple web servers on a single machine, encrypted web server etc. ♦ Topics covered in this lesson ► Virtual Hosts ► Common Gateway Interface (CGI) ► Apache Encrypted Web Server ► Squid Web Proxy Cache

12 12 Apache Topic 1 - Virtual Hosts ♦ Virtual Host functionality enables running multiple web servers on one machine. ♦ There are two types of virtual hosts: Name based virtual hosts and IP based virtual hosts. ♦ Name based virtual hosts allow multiple TLDs (Top Level Domains) on a single IP. ♦ IP based virtual hosting permits only one virtual host per IP address.

13 13 Apache Topic 2 – Common Gateway Interface (CGI) ♦ ScriptAlias directive defines where CGI scripts are located. This is known as a cgi-bin and set to /var/www/cgi-bin/ by default. ♦ AddHandler maps file extensions to specific handlers. This directive enables CGIs outside of the cgi-bin to function in any directory on the server, which has the ExecCGI option within the directories container. ♦ Action specifies a Multipurpose Internet Mail Extensions (MIME) content type and CGI script pair, so that whenever such a file type is requested, a particular CGI script is executed.

14 14 Apache Topic 3 - Apache Encrypted Web Server ♦ The Apache HTTP Server module mod_ssl provides an interface to the OpenSSL library. This provides Strong Encryption using the Secure Sockets Layer and Transport Layer Security protocols. ♦ The Secure Sockets Layer protocol is a protocol layer, which may be placed between a reliable connection-oriented network layer protocol (e.g. TCP/IP) and the application protocol layer (e.g. HTTP). ♦ mod_ssl - provides strong cryptography for the Apache Web Server.

15 15 Apache Topic 4 - Squid Web Proxy Cache ♦ Squid is a full-featured Web proxy cache designed to run on Unix systems. It is a free, open-source software. ♦ By default, squid is configured in proxy mode. In order to cache web traffic and to use the squid system as a proxy, you have to configure your browser, which needs at least two pieces of information: ► The proxy server's host name ► The port that the proxy server is accepting requests on ♦ After editing the configuration file, you must create the swap directories. You can do this by running Squid with the -z option.

16 16 Apache Lab Exercises ♦ Configuring http server and securing website documents using Apache.

17 17 Apache Conclusion ♦ Summary ► Apache has many modules that can he integrated into features. Features are characterized by directives or commands. ► The main server directives included in httpd.conf. set up the values for the main server. There is a simple API for XML support for namespace-based processing. A few modules control access to the server and files and directories. ► Apache also supports Virtual Hosts, CGI, Encrypted Web Server and Squid, a full-featured Web proxy cache, works with Apache. ♦ Question and Answer Session


Download ppt "1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer."

Similar presentations


Ads by Google