1 HASSO - PLATTNER - INSTITUT für Softwaresystemtechnik an der Universität Potsdam The Apache Modeling Project Bernhard Gröne, Andreas Knöpfel, Rudolf Kugel und Oliver Schmidt Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam
2 Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam 5 The Apache Modeling Project Bernhard Gröne, Andreas Knöpfel, Rudolf Kugel und Oliver Schmidt Juli 2004
3 Bibliografische Information der Deutschen Bibliothek Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über abrufbar. Die Reihe Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam erscheint aperiodisch. Herausgeber: Redaktion Vertrieb: Druck Professoren des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam Bernhard Gröne, Sabine Wagner Universitätsverlag Potsdam Postfach Potsdam Fon +49 (0) Fax +49 (0) allprintmedia gmbh Blomberger Weg 6a Berlin Hasso-Plattner-Institut für Softwaresystemtechnik an der Universität Potsdam, 2004 Dieses Manuskript ist urheberrechtlich geschützt. Es darf ohne vorherige Genehmigung der Herausgeber nicht vervielfältigt werden. Heft 5 (2004) ISBN ISSN
4 client client HTTP Apache HTTP Server Signals: - stop (TERM) - restart (HUP) - grc.rst.(usr1) Admin Files global config. data Sockets Master Server TCP/IP Communication Service Signals: stop now / later The (HUP/USR1) Apache Modeling Child Server 1 Project Child Server 2 Child Server N Files Documents Scripts local config. data (.htacess) Scoreboard server status generation... generation Bernhard Gröne Andreas Knöpfel Rudolf Kugel shared memory Oliver Schmidt July 8, 2004 FMC
5 ii FMC Bernhard Gröne, Andreas Knöpfel, Rudolf Kugel, Oliver Schmidt: The Apache Modeling Project Hasso Plattner Institute for Software Systems Engineering Prof. Dr. Helmert Straße 2 3, D Potsdam P.O.Box , D Potsdam, Germany The current version of this document can be found at the HPI Apache Modeling Project web site: HTML: PDF: Thanks to: Robert Mitschke and Ralf Schliehe Diecks for preparing and editing material for this document. Copyright (c) Bernhard Gröne, Andreas Knöpfel, Rudolf Kugel, Oliver Schmidt. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in appendix D entitled "GNU Free Documentation License".
6 Abstract This document presents an introduction to the Apache HTTP Server, covering both an overview and implementation details. It presents results of the Apache Modelling Project done by research assistants and students of the Hasso Plattner Institute in 2001, 2002 and The Apache HTTP Server was used to introduce students to the application of the modeling technique FMC, a method that supports transporting knowledge about complex systems in the domain of information processing (software and hardware as well). After an introduction to HTTP servers in general, we will focus on protocols and web technology. Then we will discuss Apache, its operational environment and its extension capabilities the module API. Finally we will guide the reader through parts of the Apache source code and explain the most important pieces.
7 Contents 1 Introduction About this document The FMC Philosophy The modeling project Sources of Information HTTP Servers Introduction Tasks of an HTTP Server Protocols and Standards RFCs and other standardization documents TCP/IP Domain Name Service (DNS) HTTP Access Control and Security Authorization Authentication methods HTTPS and SSL Session Management HTTP a stateless protocol Keep the state Dynamic Content Server side Scripting The Apache HTTP Server Overview History Features ii
8 FMC CONTENTS iii 3.2 Using Apache Configuration Performance Extending Apache: Apache Modules Introduction Types of Handlers Content Handling Apache 2 Filters Predefined Hooks Inside a Module: mod_cgi The Apache API Inside Apache Introduction Structure of the Source Distribution Apache source distribution Apache source distribution Multitasking server architectures Inetd: A common multitasking architecture Overview Apache Multitasking Architectures The Preforking Multiprocessing Architecture Apache Multitasking Architectures and MPMs Win32/WinNT MPM Worker MPM Others MPMs The Request Response Loop Overview Waiting for connection requests Waiting for and reading HTTP requests Process HTTP Request The Configuration Processor Where and when Apache reads configuration Internal data structures Processing global configuration data at start up Processing configuration data on requests
9 iv CONTENTS FMC 4.6 Memory and resource management: Apache Pools Why another memory management The pool structure The pool API A Operating System Concepts 102 A.1 Unix Processes A.1.1 fork() A.1.2 exec() A.1.3 wait() & waitpid() A.1.4 kill() A.2 Signals and Alarms A.2.1 Signals A.2.2 Usage A.3 Sockets A.3.1 TCP vs. UDP Ports A.3.2 Asynchronous Events A.3.3 Sockets in general A.3.4 TCP Sockets A.3.5 UDP Sockets A.4 Pipes A.4.1 Using pipes for inter process communication A.4.2 STDIN, STDOUT, STDERR A.4.3 Implementation A.4.4 Named pipes A.5 Longjmp A.5.1 Concept A.5.2 Example Longjump A.5.3 Common application A.5.4 Common Pitfalls B Sources 118 B.1 Simple HTTP Server
10 FMC CONTENTS v C Fundamental Modeling Concepts (FMC) 121 C.1 What is FMC? C.2 Compositional structures and block diagrams C.2.1 Example system C.2.2 Block diagrams C.3 Dynamic structures and Petri nets C.3.1 Behavior of dynamic systems C.3.2 Petri nets C.4 Value range structures and entity relationship diagrams C.4.1 Structured values and their relationships C.4.2 Entity Relationship Diagrams C.5 Levels of abstraction C.5.1 High level structures C.5.2 Hierarchy of models C.5.3 Lower level structures C.6 What is special about FMC? D GNU Free Documentation License 131 Bibliography 135 Glossary 136 Index 139
11 List of Figures 2.1 Simple system (structure and behavior) Behavior of a simple HTTP server Establishing and finishing a TCP connection DNS Zones Example of a HTTP Request/Response message pair Value structure of a HTTP Request/Response (overview) Value structure of a HTTP Request/Response (details) Basic Authentication process The Apache HTTP Server in its environment Configuring the Apache HTTP Server via configuration files Apache 2 Module structure Interaction of Core and Modules Apache 2.0 hook mechanism Apache Filters: The Input / Output filter chain Apache Filters: A Brigade contains a series of buckets Apache Filters: A Filter chain using Brigades for data transport Apache request response loop with module callbacks Apache request processing with module callbacks Directory structure of the Apache HTTP Server source distribution Directory structure of the Apache HTTP Server source distribution Multiprocessing Architecture of an inetd server Behavior of a multiprocessing server The leader followers pattern used in the preforking server architecture The Apache 2.0 Preforking MPM Overview: The behavior of Apache Details of the behavior of Apache vi
12 FMC LIST OF FIGURES vii 4.9 The Master Server Loop Responsibility of an Apache 2.0 MPM The Apache 2.0 WinNT MPM The Apache 2.0 Worker MPM The Request Response Loop Processing of a request Configuration processing components of Apache Points in time when Apache reads configuration Apache data structures concerning configuration Apache configuration data structures in detail Structure of the configuration processor (focusing on the data flow) Reading configuration data: Layering of function calls Processing configuration files with section directives Structure of the per request configuration processor: The walk procedures The directory walk (without error handling) Hierarchy of built-in Apache Pools Linked List of Blocks A.1 Multiprocessing and Multithreading A.2 Internals of the fork() system call A.3 Basic concept of sockets A.4 Communication via sockets A.5 Dialup and connection sockets A.6 Sockets and ports A.7 Pipes A.8 longjmp behaviour A.9 Stack content before calling longjmp() in the example above A.10 Calling longjmp() can cause errors when used without caution C.1 Block diagram: Travel agency system C.2 Petri net: Buying a ticket C.3 Entity relationship diagram: Tour reservations C.4 Block diagram: Travel agency system D.1 FMC Block Diagrams (Part 1: Example) D.2 FMC Block Diagrams (Part 2: Description)
13 viii LIST OF FIGURES FMC D.3 FMC Entity/Relationships Diagrams (Part 1: Example) D.4 FMC Entity/Relationships Diagrams (Part 2: Description) D.5 FMC Petri Nets (Part 1: Basic components) D.6 FMC Petri Nets (Part 2: Basic Example) D.7 FMC Petri Nets (Part 3: Advanced features) D.8 FMC Petri Nets (Part 4: Advanced Example)
14 Chapter 1 Introduction 1.1 About this document This document is intended for everybody interested in technical aspects of HTTP Servers, especially Apache. It does not present much information about usage and administration of Apache this is covered by many other documents. We try to give both an overview as well as dive into some details necessary for understanding how Apache works and how it is constructed. Chapter 2 shows the tasks of an HTTP server in general and its behavior in its environment. We focus on protocols like HTTP and issues concerning security, session management or dynamic content. Chapter 3 introduces the Apache HTTP Server, its features, configuration, administration and extension API. Chapter 4 guides the reader through the implementation details of Apache. It is intended for developers and people who want to know how to implement a multitasking network server. It introduces concepts and their implementation in the Apache source code. The chapter is far from being complete but tries to show the most important concepts needed to understand the Apache source code. All diagrams in this document follow the notation of the Fundamental Modeling Concepts (FMC). Appendix C presents a short introduction to this modeling method, covering philosophy, concepts and notation. 1.2 The FMC Philosophy Analyzing and understanding existing software is a common task in software engineering. As software systems tend to become more complex, there is the need for division of labor. People working on a software product must share their knowledge the team needs to communicate about the software. Deficiencies become most apparent whenever a new team member has to gather information about the software product or the team manager is not directly involved in the development and has to keep track of what is going on. In our group Modeling software intensive systems at the Hasso Plattner Institute for Software Systems Engineering, we focus on efficient communication and sharing of knowledge about software systems. 1
15 2 CHAPTER 1. INTRODUCTION FMC A model is an abstraction of the software system that helps us to think and talk about it. Everyone dealing with a software systems forms a unique model of the system in his or her mind. Division of labor works best if those models resemble each other. The Fundamental Modeling Concepts (FMC) help in transporting a model of a software system from one human being to another. That is the primary objective. Visit our web site at to learn more about FMC. 1.3 The modeling project The project was done at the Hasso Plattner Institute for Software Systems Engineering. The idea behind the project was to show students a way to master the complexity of a real software product. Apache is a HTTP Server developed by many volunteers and used by many companies all over the world. Most important, its source code is available. Therefore it is an interesting object for a modeling project. We soon learned that a lot of information about configuration and administration of Apache exists, but little about implementation details aside from the source code. More details of the seminars of 2001 and 2002 can be found at the Apache Modeling Portal (http://apache.hpi.uni-potsdam.de ) A result of the project was a set of models describing various aspects of Apache and its environment which formed the basis of this document. 1.4 Sources of Information The first task in the modeling project was to find sources of information about Apache. Starting from the Apache HTTP Server Project Web site (http://httpd.apache.org ), it is easy to find information about usage and administration of Apache; take for example Apache Desktop Reference by Ralf S. Engelschall . Finding information about the implementation of Apache was much harder. A very good source of information was Writing Apache Modules with Perl and C by Lincoln Stein & Doug MacEachern . This book describes the Module API of Apache and provides the information needed to create new modules. Therefore it contains a description of the Apache API and the Request Response Loop (see section 4.4). The most important source of information was the source code distribution of Apache itself. It contains documentation of various details and lots of comments in the source code. One problem lies in the fact that the source code distribution provides one source base for many system platforms. In the Apache 1.3.x source, big parts of code are only valid for one platform (using the #ifdef preprocessor directive). For Apache 1.3.x, we only looked at the code valid for the linux platform. In 2002, we examined the Apache 2.0 source code which provides a much better structure. The flexibility of the new Apache holds other obstacles for the reader of its code: For example, the hook mechanism provides an extensible indirect procedure call mechanism using an elegant macro mechanism. Without knowing this mechanism, you won t find out which handlers will be registered for a hook (see section for details).
16 FMC 1.4. SOURCES OF INFORMATION 3 The only tool used for the analysis of the source code transformed the C source code into a set of syntax highlighted and hyperlinked HTML files. They are available at our project site 1. 1 Start with Structure of the Apache HTTP Server source distribution :
17 Chapter 2 HTTP Servers 2.1 Introduction If you want to understand a software product, it is a good idea to know exactly what it is supposed to do. In case of a server, you need information about the clients, resources and protocols, too. As the server is part of a system, it is necessary to examine and understand the system. As a consequence, we will first give an introduction to HTTP servers in general, including protocols like HTTP, TCP/IP and finally discussing subjects like dynamic content and web applications. Section 2.2 gives an overview of the system consisting of the HTTP Server, clients and resources. It presents a model of a simple HTTP server that could be implemented in a small exercise. Section 2.3 deals with protocols and standards related to the HTTP server. The most important protocol is HTTP. All further sections describe various aspects of the system like authentication, security or using HTTP for web applications. They just provide an overview as there are enough documents going into detail. 2.2 Tasks of an HTTP Server In general, an HTTP server waits for requests and answers them corresponding to the Hypertext Transfer Protocol. A client (usually a web browser) requests a resource (usually an HTML or image file). The server examines the request and maps the requested resource to a file or forwards the request to a program which, in turn, produces the requested data. Finally, the server sends the response back to the client. The left hand side of figure 2.1 shows a very simple system structure: The user communicates with the browser and the browser sends a request (R) to the HTTP server which, in turn, reads files from a storage (please note that the server has read only access to the file storage). This is a simplified view: The browser is a program running on a computer connected to the HTTP Server via a network. The channel between the user and the browser involves screen, mouse and keyboard. Finally, only one connection is visible although a browser can connect to multiple servers. 4
18 FMC 2.2. TASKS OF AN HTTP SERVER 5... User Web Browser HTTP Server Browser Browser... Browser Enter URL or select link HTTP R R HTTP Server R establish connection send GET request Files process request send resource close connection Editor Editor process resource yes required resources missing? no render page Figure 2.1: Simple system (structure and behavior) On the right hand side, figure 2.1 also depicts what happens in the system: The user enters a URL in the browser or clicks on a hyperlink. The Web Browser extracts the server address from the URL or link and establishes a TCP/IP connection with the server. Using the connection, the browser sends a GET request to the HTTP server. It extracts the resource name to be requested from the URL or the link. The HTTP Server reads the request and processes it (i.e. translates it to a file name). It sends the resource in its response using the connection and finally closes the connection. The browser examines the received data. An HTML document can contain links to further resources needed to display it properly, like images or java applets. The browser has to request them from the HTTP server, too, as they are not included in the HTML document. After receiving the last resource needed to display the HTML document, the browser successfully renders the page and waits for further activities of the user. Figure 2.1 shows a very simplified view of the system: It is easy to see that establishing and closing TCP/IP connections for each resource is a waste of time and network bandwidth. HTTP/1.0 offered the keep alive header field as an option, in HTTP/1.1 the default is to keep the connection alive for a certain time of inactivity of the client (usually 15 seconds). We also simplified the behavior of the browser: Since Netscape s browser replaced Mosaic, a browser usually reacts to its user s activities while loading images. The dynamic structure diagram in figure 2.2 shows the behavior of the server in more detail: After initialization, the server enters the request response loop. It waits for an incoming request, examines it 1, maps the resource to a file and delivers it to the browser. Finally it closes the connection to the client. It is easy to implement an HTTP server displaying the behavior in figure 2.2 in about 100 lines of code (see appendix B.1 for the code). A productive HTTP server is far more complex for various reasons: Additional Features 1 only the processing of the GET method is shown in detail.
19 6 CHAPTER 2. HTTP SERVERS FMC Initialization Request port 80 as server port wait for connection request (port 80) establish connection, read request HTTP Method else GET translate URI into file name find file and determine its type File not found not supported Error: Illegal Request send response header send file Error: File not found send error message close connection Figure 2.2: Behavior of a simple HTTP server full implementation of HTTP (all versions) handling of concurrent requests (multiprocessing / multi-threading) provide interfaces enabling programmers to add more features security (access control, authentication methods) dynamic web content (CGI, scripting and server side includes) virtual hosts proxy functionality advanced detection of the MIME type of a resource Operation of the server robust and safe operation (24 x 7) configuration by text files apply configuration changes without stopping the server administration tool to control the server status information provided by the server logging documentation for administrators
20 FMC 2.3. PROTOCOLS AND STANDARDS 7 Portability and installation procedure one source distribution for various platforms little configuration effort to compile for a specific platform easy installation with sensible default configuration and useful templates documentation for developers aside from the source code 2.3 Protocols and Standards RFCs and other standardization documents RFCs (Request For Comments) are a collection of notes about the Internet which started in These notes describe many standards concerning computer communication, networking protocols, procedures, programs and concepts. All Internet standards are defined in the RFCs. To become a standard, an RFC has to traverse three steps called Internet Standards Track: 1. It firstly is introduced as a Proposed Standard by the IESG (Internet Engineering Stearing Group). 2. Afterwards, it can become a Draft Standard which is nearly a standard with only minor changes for special cases to come. 3. Finally, if it is widely used and considered to be useful for the community, it is raised to the rank of a Standard. The RFC Editor is responsible for the final document. The RFC Editor function is funded by the Internet Society For further information on RFCs look at This site also contains links to all involved Internet Related Standard Organizations, like the W3C (http: //www.w3c.org) TCP/IP TCP/IP is the most commonly used network protocol worldwide and all nodes connected to the Internet use it. TCP/IP consists of the 3 main protocols TCP (Transmission Control Protocol), UDP (User Data Protocol) and IP (Internet Protocol). UDP is a less important protocol using the lower level Protocol IP as well. For more details, have a look at Computer Networks by Andrew Tanenbaum .
21 8 CHAPTER 2. HTTP SERVERS FMC TCP and UDP TCP and UDP are transmission protocols that use IP to transmit their data. While IP is responsible for transmitting packets to the destination at best effort, TCP and UDP are used to prepare data for sending by splitting them in packets. TCP (Transmission Control Protocol) provides a connection for bi directional communication between two partners using two data streams. It is therefore called a connection oriented protocol. Before sending or receiving any data, TCP has to establish a connection channel with the target node. To provide the channel for the two data streams it has to split the data into packets and ensure that packets arrive without error and are unpacked in the proper order. That way an application using TCP does not have to take precautions for corrupted data transfer. TCP will make sure data transfer is completed successfully or report an error otherwise. UDP (User Data Protocol) on the other hand is a much simpler technique for delivering data packets. It just adds a header to the data and sends them to its destination, regardless whether that node exists or expects data. UDP does not guarantee that packets arrive, nor does it ensure they arrive in the order they were sent. If packets are transmitted between two networks using different paths they can arrive in a wrong order. It s the application that has to take care of that. However, for applications needing fast transfer without overhead for data that is still usable even if single packets are missing or not in order, UDP is the protocol in choice. Most voice and video streaming applications therefore use UDP. Establishing TCP Connections Server node Client node socket bind listen set-up server port request connection socket connect accept wait for connection requests establish connection read write Any communication read write close close connection close connection close Figure 2.3: Establishing and finishing a TCP connection.
22 FMC 2.3. PROTOCOLS AND STANDARDS 9 A TCP connection can only be established between two nodes: A client node sending a connection request and a server node waiting for such connection requests. After receiving a connection request, the server will respond and establish the connection. Then both nodes can send and receive data through the connection, depending on the application protocol. When finished, any node (but usually the client) can close the connection. This behavior is shown in figure 2.3. Here you also see the operating system calls used to control the sockets see appendix A.3 for details. Ports An address of a TCP or UDP service consists of the IP address of the machine and a port number. These ports enable hosts using TCP/IP to offer different services at one time and to enable clients to maintain more than one connection to one single server. On a server, ports are used to distinguish services. HTTP servers usually use the well known port 80 to offer their services. Other standard ports are 53 for DNS and 21 for FTP for example. In any situation, every connection on a network has different pairs of target and source addresses (IP address + port number). IP addresses IP, the Internet Protocol, is responsible for sending single packets to their destination nodes. This is accomplished by assigning each computer a different IP address. Each IP address consists of 32 bits usually represented in 4 dotted decimals each ranging from 0 through 255. An example for a valid IP address is IP addresses can be distinguished by the networks they belong to. The IP name space is separated into networks by dividing the 32 Bits of the address into network and host address bits. This information is used for routing the packets to its destination Domain Name Service (DNS) As covered by the previous chapter, each node on the Internet can be identified by a unique IP address. Unfortunately IP addresses are numbers which are neither user friendly nor intuitive. Name space As a solution to that problem, DNS maps user-friendly names to IP addresses. Names used in the DNS are organized in a hierarchical name-space. The name space is split up into domains. The topmost domain is the. (Dot) domain. Domains below that, referred to as first level domains, split up the name space by country. The first level domains com, net, org and edu are an exception to that rule. Originally they were intended to be used in the United States only, but now are used all over the world. More first level domains will be available. Individuals can register second level domains within almost any of these domains.
Network Technologies Glenn Strong Department of Computer Science School of Computer Science and Statistics Trinity College, Dublin January 28, 2014 What Happens When Browser Contacts Server I Top view:
HTTP Internet Engineering Fall 2015 Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Questions Q1) How do web server and client browser talk to each other? Q1.1) What is the common
Questions 1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment? 4. When will a TCP process resend a segment? CP476 Internet
HASSO - PLATTNER - INSTITUT für Softwaresystemtechnik an der Universität Potsdam Requirements for Service Composition Harald Meyer Dominik Kuropka Technische Berichte Nr. 11 des Hasso-Plattner-Instituts
Client/Server paradigm As we know, the World Wide Web is accessed thru the use of a Web Browser, more technically known as a Web Client. 1 A Web Client makes requests of a Web Server 2, which is software
S y s t e m A r c h i t e c t u r e V e r s i o n 5. 0 Page 1 Enterprise etime automates and streamlines the management, collection, and distribution of employee hours, and eliminates the use of manual
Configuring Security Features of Session Recording Summary This article provides information about the security features of Citrix Session Recording and outlines the process of configuring Session Recording
1. Introduction... 2 2. Remote Access via SSL... 2 2.1. Configuration of the Astaro Security Gateway... 3 2.2. Configuration of the Remote Client...10 2.2.1. Astaro User Portal: Getting Software and Certificates...10
E-Commerce Security An e-commerce security system has four fronts: LECTURE 7 (SECURITY) Web Client Security Data Transport Security Web Server Security Operating System Security A safe e-commerce system
Chapter 1 Load Balancing 57 Understanding Slow Start When you configure a NetScaler to use a metric-based LB method such as Least Connections, Least Response Time, Least Bandwidth, Least Packets, or Custom
orrelogtm Security Correlation Server Quick Installation Guide This guide provides brief information on how to install the CorreLog Server system on a Microsoft Windows platform. This information can also
CONTENT of this CHAPTER v DNS v HTTP and WWW v EMAIL v SNMP 3.2.1 WWW and HTTP: Basic Concepts With a browser you can request for remote resource (e.g. an HTML file) Web server replies to queries (e.g.
Computer Networks Lecture 7: Application layer: FTP and Marcin Bieńkowski Institute of Computer Science University of Wrocław Computer networks (II UWr) Lecture 7 1 / 23 Reminder: Internet reference model
CS 665: Computer System Security Network Security Bojan Cukic Lane Department of Computer Science and Electrical Engineering West Virginia University 1 Usage environment Anonymity Automation, minimal human
Internet Technologies World Wide Web (WWW) Proxy Server Network Address Translator (NAT) What is WWW? System of interlinked Hypertext documents Text, Images, Videos, and other multimedia documents navigate
BlackBerry Enterprise Service 10 Secure Work Space for ios and Android Version: 10.1.1 Security Note Published: 2013-06-21 SWD-20130621110651069 Contents 1 About this guide...4 2 What is BlackBerry Enterprise
F A C T S H E E T GoToMyPC Corporate Advanced Firewall Support Features Citrix GoToMyPC Corporate features Citrix Online s advanced connectivity technology. We support all of the common firewall and proxy
Xerox Multifunction Devices Customer Tips June 5, 2007 This document applies to these Xerox products: X WC Pro 232/238/245/ 255/265/275 for the user Xerox Network Scanning HTTP/HTTPS Configuration using
User Manual Onsight Management Suite Version 5.1 Another Innovation by Librestream Doc #: 400075-06 May 2012 Information in this document is subject to change without notice. Reproduction in any manner
1 of 5 1/10/2005 9:37 PM Advertisement: Support JavaWorld, click here! January 2005 HOME FEATURED TUTORIALS COLUMNS NEWS & REVIEWS FORUM JW RESOURCES ABOUT JW A Java proxy for MS SQL Server Reporting Services
1 cse879-03 2010-03-29 17:23 Kyung-Goo Doh Chapter 3. Web Application Technologies reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002) 1. The HTTP Protocol. HTTP = HyperText
Apache Server Implementation Guide 340 March Road Suite 600 Kanata, Ontario, Canada K2K 2E4 Tel: +1-613-599-2441 Fax: +1-613-599-2442 International Voice: +1-613-599-2441 North America Toll Free: 1-800-307-7042
Web and HTTP Protocolo HTTP Web page consists of objects Object can be HTML file, JPEG image, Java applet, audio file, Web page consists of base HTML-file which includes several referenced objects Each
DEPLOYMENT GUIDE Version 1.1 Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Citrix Presentation Server Prerequisites
Astaro Security Gateway V8 Remote Access via SSL Configuring ASG and Client 1. Introduction This guide contains complementary information on the Administration Guide and the Online Help. If you are not
Introduction Security and privacy are two of the leading issues for users when transferring important files. Keeping data on-premises makes business and IT leaders feel more secure, but comes with technical
The feature allows embedded messages of the Session Initiation Protocol (SIP) passing through a device that is configured with Network Address Translation (NAT) to be translated and encoded back to the
APACHE WEB SERVER Andri Mirzal, PhD N28-439-03 Introduction The Apache is an open source web server software program notable for playing a key role in the initial growth of the World Wide Web Typically
April 2007 About RemotelyAnywhere... 2 About RemotelyAnywhere... 2 About this Guide... 2 Installation of RemotelyAnywhere... 2 Software Activation...3 Accessing RemotelyAnywhere... 4 About Dynamic IP Addresses...
Installation Guide For ChoiceMail Enterprise Edition How to Install ChoiceMail Enterprise On A Server In Front Of Your Company Mail Server August, 2004 Version 2.6x Copyright DigiPortal Software, 2002-2004
Collax Web Security Howto This howto describes the setup of a Web proxy server as Web content filter. Requirements Collax Business Server Collax Security Gateway Collax Platform Server including Collax
SSL/TLS 1 Transport Layer Security Protocols Secure Socket Layer (SSL) Originally designed to by Netscape to secure HTTP Version 2 is being replaced by version 3 Subsequently became Internet Standard known
Astaro Security Gateway V8 Remote Access via L2TP over IPSec Configuring ASG and Client 1. Introduction This guide contains complementary information on the Administration Guide and the Online Help. If
Internet Information TE Services 5.0 Training Division, NIC New Delhi Understanding the Web Technology IIS 5.0 Architecture IIS 5.0 Installation IIS 5.0 Administration IIS 5.0 Security Understanding The
2 Privacy Internet Privacy Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 19 June 2014 Common/Reports/internet-privacy-options.tex, r892 1 Privacy Acronyms
User-ID Best Practices PAN-OS 5.0, 5.1, 6.0 Revision A 2011, Palo Alto Networks, Inc. www.paloaltonetworks.com Table of Contents PAN-OS User-ID Functions... 3 User / Group Enumeration... 3 Using LDAP Servers
Setting Up SSL on IIS6 for MEGA Advisor Revised: July 5, 2012 Created: February 1, 2008 Author: Melinda BODROGI CONTENTS Contents... 2 Principle... 3 Requirements... 4 Install the certification authority
Risks with web programming technologies Steve Branigan Lucent Technologies Risks with web programming technologies Abstract Java applets and their kind are bringing new life to the World Wide Web. Through
Deploying the BIG-IP System with Oracle E-Business Suite 11i Introducing the BIG-IP and Oracle 11i configuration Configuring the BIG-IP system for deployment with Oracle 11i Configuring the BIG-IP system
SFWR 4C03: Computer Networks and Computer Security Feb 23-26 2004 Lecturer: Kartik Krishnan Lectures 19-21 Remote login (Telnet): Telnet permits a user to connect to an account on a remote machine. A client
Lektion 2: Web als Graph / Web als System Helmar Burkhart Informatik Universität Basel Helmar.Burkhart@... WT-2-1 Lernziele und Inhalt Web als Graph erkennen Grundelemente von sozialen Netzwerken sehen
NEFSIS TRAINING SERIES Nefsis Dedicated Server version 5.2.0.XXX (DRAFT Document) Requirements and Implementation Guide (Rev5-113009) REQUIREMENTS AND INSTALLATION OF THE NEFSIS DEDICATED SERVER Nefsis
WildFire Cloud File Analysis The following topics describe the different methods for sending files to the WildFire Cloud for analysis. Forward Files to the WildFire Cloud Verify Firewall File Forwarding
Binonymizer A Two-Way Web-Browsing Anonymizer Tim Wellhausen Gerrit Imsieke (Tim.Wellhausen, Gerrit.Imsieke)@GfM-AG.de 12 August 1999 Abstract This paper presents a method that enables Web users to surf
Configuration Guide BES12 Cloud Published: 2016-04-08 SWD-20160408113328879 Contents About this guide... 6 Getting started... 7 Configuring BES12 for the first time...7 Administrator permissions you need
How to Configure Captive Portal Captive portal is one of the user identification methods available on the Palo Alto Networks firewall. Unknown users sending HTTP or HTTPS 1 traffic will be authenticated,
Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research
Xerox DocuShare Security Features Security White Paper Xerox DocuShare Security Features Businesses are increasingly concerned with protecting the security of their networks. Any application added to a
DEPLOYMENT GUIDE DEPLOYING THE BIG-IP LTM SYSTEM WITH CITRIX PRESENTATION SERVER 3.0 AND 4.5 Deploying F5 BIG-IP Local Traffic Manager with Citrix Presentation Server Welcome to the F5 BIG-IP Deployment
IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version 6.3.1 Fix Pack 2 Reference IBM Tivoli Composite Application Manager for Microsoft
Page 1 of 10 Article ID: 318380 - Last Review: July 7, 2008 - Revision: 8.1 Description of Microsoft Internet Information Services (IIS) 5.0 and 6.0 status codes This article was previously published under
CSE 123b Communications Software Spring 2002 Lecture 11: HTTP Stefan Savage Project #2 On the Web page in the next 2 hours Due in two weeks Project reliable transport protocol on top of routing protocol
An Oracle White Paper June 2011 OpenLDAP Oracle Enterprise Gateway Integration Guide 1 / 29 Disclaimer The following is intended to outline our general product direction. It is intended for information
IBM zenterprise System Integrating the Hardware Management Console s Broadband Remote Support Facility into your Enterprise SC28-6927-01 IBM zenterprise System Integrating the Hardware Management Console
Integrating Siteminder with SA SA - Siteminder Integration Guide Abstract The Junos Pulse Secure Access (SA) platform supports the Netegrity Siteminder authentication and authorization server along with
WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide This document is intended to help you get started using WebSpy Vantage Ultimate and the Web Module. For more detailed information, please see
The Hyper-Text Transfer Protocol (HTTP) Antonio Carzaniga Faculty of Informatics University of Lugano October 4, 2011 2005 2007 Antonio Carzaniga 1 HTTP message formats Outline HTTP methods Status codes
CS 188/219 Scalable Internet Services Andrew Mutz October 8, 2015 For Today About PTEs Empty spots were given out If more spots open up, I will issue more PTEs You must have a group by today. More detail
UTM Firewall version 9 NETASQ MIGRATING FROM V8 TO V9 Document version: 1.1 Reference: naentno_migration-v8-to-v9 INTRODUCTION 3 Upgrading on a production site... 3 Compatibility... 3 Requirements... 4
Enabling Kerberos SSO in IBM Cognos Express on Windows Server 2008 Nature of Document: Guideline Product(s): IBM Cognos Express Area of Interest: Infrastructure 2 Copyright and Trademarks Licensed Materials
Application Note Configuring SSL VPN on the Cisco ISA500 Security Appliance This application note describes how to configure SSL VPN on the Cisco ISA500 security appliance. This document includes these
Oracle Discoverer 4i Plus Firewall and SSL Tips An Oracle White Paper February 00 Introduction...1 Background...1 Scenarios... Basics of Starting Discoverer...3 Firewalls...4 Discoverer Problems Due to
Passwordstate Installation Instructions This document and the information controlled therein is the property of Click Studios. It must not be reproduced in whole/part, or otherwise disclosed, without prior
1. Introduction... 2 2. Remote Access via L2TP over IPSec... 2 2.1. Configuration of the Astaro Security Gateway... 3 2.2. Configuration of the Remote Client...11 2.2.1. Astaro User Portal: Getting Preshared
Secure Web Appliance SSL Intercept Table of Contents 1. Introduction... 1 1.1. About CYAN Secure Web Appliance... 1 1.2. About SSL Intercept... 1 1.3. About this Manual... 1 1.3.1. Document Conventions...
IBM Security QRadar Vulnerability Manager Version 7.2.1 User Guide Note Before using this information and the product that it supports, read the information in Notices on page 61. Copyright IBM Corporation
Using EMC Unisphere in a Web Browsing Environment: Browser and Security Settings to Improve the Experience Applied Technology Abstract The Web-based approach to system management taken by EMC Unisphere
Sophos UTM Remote Access via PPTP Configuring UTM and Client Product version: 9.000 Document date: Friday, January 11, 2013 The specifications and information in this document are subject to change without
User Identification and Authentication Vital Security 9.2 Copyright Copyright 1996-2008. Finjan Software Inc.and its affiliates and subsidiaries ( Finjan ). All rights reserved. All text and figures included
Decryption Palo Alto Networks PAN-OS Administrator s Guide Version 6.0 Contact Information Corporate Headquarters: Palo Alto Networks 4401 Great America Parkway Santa Clara, CA 95054 www.paloaltonetworks.com/company/contact-us
Adding Advanced Caching and Replication Techniques to the Apache Web Server Joachim Marder, Steffen Rothkugel, Peter Sturm University of Trier D-54286 Trier, Germany Email: email@example.com, firstname.lastname@example.org,
Step-by-Step Configuration Kerio Technologies Kerio Technologies. All Rights Reserved. Printing Date: August 15, 2007 This guide provides detailed description on configuration of the local network which
Technical White Paper BlackBerry Security For Microsoft Exchange Version 2.1 Research In Motion Limited 2002 Research In Motion Limited. All Rights Reserved Table of Contents 1. INTRODUCTION... 1 2. ARCHITECTURE...
Chapter 17 Transport-Level Security Web Security Considerations The World Wide Web is fundamentally a client/server application running over the Internet and TCP/IP intranets The following characteristics
Working with Reverse Proxy Version 7.x Table of Contents BACKGROUND...3 Single Sign On (SSO)... 3 Interwise Connect... 3 INTERWISE CONNECT WORKING WITH REVERSE PROXY...4 Architecture... 4 Interwise Web
Enabling SSL and Client Certificates on the SAP J2EE Engine Angel Dichev RIG, SAP Labs SAP AG 1 Learning Objectives As a result of this session, you will be able to: Understand the different SAP J2EE Engine
Exploiting the Web with Tivoli Storage Manager Oxford University ADSM Symposium 29th Sept. - 1st Oct. 1999 Roland Leins, IBM ITSO Center - San Jose email@example.com Agenda The Web Client Concept Tivoli
Millbeck Communications Secure Remote Access Service Internet VPN Access to N3 VPN Client Set Up Guide Version 6.0 COPYRIGHT NOTICE Copyright 2013 Millbeck Communications Ltd. All Rights Reserved. Introduction
Secure Web Appliance Reverse Proxy Table of Contents 1. Introduction... 1 1.1. About CYAN Secure Web Appliance... 1 1.2. About Reverse Proxy... 1 1.3. About this Manual... 1 1.3.1. Document Conventions...
Implementing Secure Sockets Layer on iseries Presented by Barbara Brown Alliance Systems & Programming, Inc. Agenda SSL Concepts Digital Certificate Manager Local Certificate Authority Server Certificates
USER GUIDE WEB-BASED SYSTEM CONTROL APPLICATION Publication: 81-9059-0703-0, Rev. C www.pesa.com Phone: 256.726.9200 Thank You for Choosing PESA!! We appreciate your confidence in our products. PESA produces
Your consent to our cookies if you continue to use this website.