Web Server Training SYS-ED Experience

Submit Web Server Questions


Submit Web Server Questions

Technology Driven IT Training

Knowledge Base

Submit Web Server Questions to SYS-ED Advanced search

Apache Web Server

IIS: Internet Information Server

Oracle Application Server


Interrelated Information Technology

MS Operating Systems and Networks Questions Oracle Questions
UNIX Questions WebLogic Questions
WebSphere Questions WebSphere MQ Questions

The SYS-ED knowledge base is a service for answering questions, inclusive of the research and validation of the accuracy of information in the public domain. Citation of source documentation and examples are used to provide answers to the questions. Utilization and reliance on the answers, information, or other materials received through this website is done at your own risk.


Q I access my website from the server or from my local network, but I can't access it from elsewhere on the Internet? Why is this anomaly occurring?
A There are many possible reasons and most of them are related to the configuration of the network, not the configuration of the Apache HTTP Server.

One of the most common problems is that a firewall blocks access to the default HTTP port 80. Many consumer ISPs block access to this port. A straightforward test is to change any Port and Listen directives in httpd.conf to use port 8000 and then request the site using http://yourhost.example.com:8000/.

Q What does it mean when my CGIs fail with "Premature end of script headers"?
A1 The server was expecting a complete set of HTTP headers, followed by a blank line, and did not get them.
A2 A common cause of this problem is the script terminating before sending the complete set of headers, or possibly no headers of all to the server. In order to ascertain whether this was the source of the problem, run the script standalone from an interactive session. If error messages are generated, this most likely is the cause of the premature end of script headers message. Even if the CGI runs without error from the command-line, the environment and permissions may be different when running under the web server. The CGI can only access resources allowed for the User and Group specified in the Apache configuration. Although the environment will not be the same as the one provided on the command line, it can be adjusted using the directives provided by mod_env.
A3 Another common cause of this error can result from an interaction with Perl's output buffering.

In order to make Perl flush its buffers after each output statement, insert the following statements around the print or write statements that is sent to the HTTP headers:


Code Snippet


    local ($oldbar) = $|;

    $cfh = select (STDOUT);

    $| = 1;


    # print your HTTP headers here


   $| = $oldbar;

   select ($cfh);


This generally will be necessary only when calling external programs from a script that sends output to stdout, or if there will be a long delay between the time the headers are sent and the actual content starts being emitted.

In order to maximize performance, buffer-flushing should be turned back off with $| = 0 or the equivalent after the statements that send the headers are displayed.

The equivalent task will need to be performed for scripts not written in Perl.

A4 If there is no outputting of the required headers, then the error will be received.

Q Can the /etc/passwd file be used for web page authentication?
A Yes it can be done. However, it is not a recommended practice. Web technology provides no standard regulation on how often or how rapidly authentication failure retries can be made. Accordingly, it is possible for a dictionary or mass attack to be applied to the system's root password. Web authentication passwords generally are sent across the wire and through intermediate proxy systems, in essentially plain text. It will be relatively easy for someone to put up a page that will steal the cached password from a client's cache.

Q Is there a search engine included with Apache?
A Apache does not include a search engine. There are commercial and open source search engines which can be used with Apache. Several are listed on the Web Site Search Tools page.

Q Can ASP: Active Server Pages be used with Apache?
A The base Apache Web Server package does not include ASP support. Several projects provide ASP or ASP-like functionality for Apache.

A partial list includes: Apache::ASP mod_mono Chilisoft ASP.

Q Should Apache be integrated with Tomcat?
A There are a number of factors which need to be evaluated in order to make an informed decision. With Tomcat 5, performance becomes a less compelling reason to integrate Apache with Tomcat.

This table provides a summary of trade-offs.

Factor Needs to Evaluated
Clustering Using Apache as a front end allows Apache to act as a front door to content to multiple Tomcat instances. If one Tomcats fails, Apache will implement a fallover.
Clustering/Security Apache can also be used as a front door to different tomcats for different URL namespaces (/app1/, /app2/, /app3/, or virtual hosts). The Tomcats can then be each in a protected area and security can then applied to the Apache Server.
Security This issue is complex. Java has the security manager; Apache has additional security issues which need to be addressed. When Apache is run with Tomcat; there will be two systems to defend.
Add-ons CGI, perl, and PHP can be added Apache. Apache also has hundreds of modules that can be plugged. Tomcat can have this ability, but the code hasn't been written yet.
Decorators With Apache in front of tomcat, any number of decorators can be performed that tomcat doesn't support or doesn't have the immediate code support.
Speed Apache is faster at serving static content than Tomcat. However, this will not be a factor unless it is being employed to a high traffic site.
Socket handling/system stability Apache has better socket handling with respect to error conditions than Tomcat. The main reason is that Tomcat must perform all its socket handling via the JVM which needs to be cross platform.
A major issue is that socket optimization is a platform specific ordeal. Most of the time the Java code is fine; however, when being confronted with dropped connections, invalid packets, invalid requests from invalid IP's, Apache does a better job at dropping these error conditions than Tomcat and JVM based program.

Q When I launch Apache, it generates the following error: No installed service named "Apache2".
A Apache doesn't always install the service. This can be remedied by going to the command prompt and then typing in: c:\apache2\bin\apache -k install It will also be necessary to ensure that the path has been changed to the location where Apache has been installed to.

Q Is it possible to get a list of the Apache directives?
A This information is available from the: http://httpd.apache.org/docs/2.2/mod/directives.html.

IIS: Internet Information Server

Q What are the features of the URL Rewrite Module for IIS 7.0 which would help in administering IIS?
Feature Explanation
Rules-based URL rewriting engine Rewrite rules are used to express the logic of what to compare/match the request URL with and what to do if comparison was successful.

Web server and site administrators can use rewrite rule sets to define URL rewriting logic.

Regular expression pattern matching Rewrite rules can use ECMA-262 compatible regular expression syntax for pattern matching.
Wildcard pattern matching Rewrite rules can use wildcard syntax for pattern matching.
Global and distributed rewrite rules. Global rules are used to define server-wide URL rewriting logic. These rules are defined within applicationHost.config file and they cannot be overridden or disabled on any lower configuration levels.

Distributed rules are used to define URL rewriting logic specific to a particular configuration scope. These type of rules can be defined on any configuration level by using web.config files.

String manipulation functions Built-in string manipulation functions can be used to convert URLs to lowercase and to perform URL encoding and decoding.
Rewrite maps Rewrite map is an arbitrary collection of name-value pairs that can be used within rewrite rules to generate the substitution URL during rewriting.

Rewrite maps are particularly useful when there are a large set of rewrite rules, all of which use static strings. In those cases, instead of defining a large set of simple rewrite rules, all the mappings can be placed between input URL and substitution URL as keys and values into the rewrite map. There then can be a rewrite rule which references this rewrite map for look up substitution URL based on the input URL.

Failed Request Tracing support IIS7.0 Failed Request Tracing can be used to troubleshoot errors related to URL rewriting.
Rule templates Rule template is an extension for URL rewrite module user interface, that simplifies creation of rewrite rules for a particular task. The module includes 3 built-in rule templates, plus it allows plugging in any number of custom templates.

Q Is it possible to stress test IIS to run performance analysis and identify prospective response time that my company may well be facing.
A The WCAT: Web Capacity Analysis Tool can be used for testing client-server network configurations. The tool simulates a variety of workload scenarios on a network, affording the opportunity to the optimal configuration for a server and network. WCAT is designed specifically for evaluating Internet servers running Microsoft Windows Server and Microsoft IIS: Internet Information Server. It can also be utilized on some web servers.

WCAT provides workload simulations to test the download of various-sized pages or content from the server at different levels of connectivity. The Windows Server Resource Kit has WCAT for IIS 6 but it works fine in IIS 7.0.

Q The only SMTP Module that I can find in Windows Server 2008 is in features, but this requires old IIS 6.0 compatibility mode. Is that correct?
A Yes, SMTP requires the Metabase system, so it is configured in IIS 6.0 compatibility mode.

Additional information on Metabase Compatibility with IIS 7.0 is available from the following url:


Q What is the impact of turning off kernel mode cache in IIS 7.0?
A The impact will be dependent on the server load.
  • At 15,000 requests/second, kernel caching will be a major problem.
  • At 100 requests/second, missing kernel caching will probably not be noticed.

Q What is the memory footprint of an application pool? Does it load the CLR: Common Language Runtime?
A An Application Pool that only serves static files with all features installed will have a footprint of 3 MB private bytes, 5 MB page file.

Windows Server 2008 handles multiple application pools better than its 2003 predecessor. When ASP.NET requests are made a small amount of the CLR is loaded during startup (approximately 100kb). The preload is configurable by the managed Runtime Version property on the ApplicationPool. The rest of the CLR (approximately 8mb) will be loaded on the first ASPX request.

Q What support will Windows Server 2008 have for FPSE: Front Page Server Extensions?

FPSE is no longer a part of Windows Server. There is a reasonable likelihood that third parties will create a download package for FPSE to run on Windows Server 2008/IIS 7.0. It will not have any new features or enhancements, only fixes to make it compatible.

Q Is it possible to limit the amount of memory an application pool will use?
A No, but there is memory-based recycling, which will recycle AppPools that exceed configured memory limits.

Q What is the cause of the "Http 500.19 - Internal Server Error"?
A The 500.19 error is caused by the IIS 7.0 feature delegation mode. When a feature is delegated to site owners, and the site owners modify the feature, then their changes are persisted in web.config.

If the server administration revokes the delegated management on that feature, then the web site owner has the responsibility of cleaning up the feature details from web.config. Otherwise, all sites that had modified that delegated feature will immediately give an "Http Error: 500.19 - Internal Server Error" message.

The general recommendation in order to avoid this issue, is to not to revoke delegated features once they are published to end customers.

Q How does IIS 7.0 handle web.config updates?
A If the hosted site does not have a web.config, IIS 7.0 will create one.

If the site has a web.config, IIS 7.0 modifies it.

If the web.config is modified, then the site owners have the responsibility of merging the changes and ensuring that the changes are manually merged and maintained.

Oracle Application Server

Q What does Oracle Application Server 10g provide for system management services?
A Oracle Application Server 10g includes a subset of the Oracle Enterprise Manager product specifically designed for managing the application server. Enterprise Manager 10g Application Server Control is the management interface.
  • Enterprise Manager 10gGrid Control is a comprehensive system for managing and monitoring large-scale Oracle systems. It will support Oracle application servers versions 9.0.2, 9.0.3 and 10g.
  • Oracle is providing Enterprise Manager 10g as an optional installation for the application server and can be used with the Application Server Control administration interface to provide integrated application server system management.

Together these management services accommodate a range of potential application server configurations: a simple, single JEE server installation, a more sophisticated web site utilizing portal and LDAP services, or a comprehensive distributed application server system. It will only be necessary to install and utilize the Enterprise Manager services specific to the client environment.

Q In order to perform basic administration operations; will the complete Enterprise Manager system need to be installed?
A No. For application server administration only the Application Server Control interface will be required. It will provide a web-based console for performing application server administration and real-time monitoring for an individual application server.

Application Server Control is installed with the application server and automatically configured and available for standard administration tasks.

Q What does Enterprise Manager use as a source for application server metrics?
A The main source of application server performance data used by Enterprise Manager is the application server's DMS: Dynamic Monitoring Service. Most Oracle application server components, such as the Oracle HTTP Server and OC4J, use DMS to automatically generate runtime performance statistics. These statistics are maintained in memory and are gathered and interpreted by Enterprise Manager, along with host system metrics.

Q What overhead is associated with application server monitoring?
A There is no additional load placed on the application server for most of the monitoring performed by Enterprise Manager. Unlike other monitoring systems that require initiating another process to generate performance data, Enterprise Manager obtains most of its monitoring data from existing DMS metrics generated by the application server.

Q Can I use the Application Server Control to manage multiple application server installations?

No, with the exception of clustered application servers. Each installation of Application Server 10g includes its own Application Server Control console running on a specific port. Administrators connect directly to that console to perform administration operations for that application server.

However, clustered application servers can be managed from a single Application Server Control, for operations such as: starting/stopping the cluster, performing configuration changes and deploying JEE applications across the cluster. These cluster operations can be performed across multiple networked hosts. Application Server Control uses DCM and OPMN to perform cluster management operations across distributed application servers.

Q What are the new web cache features available in Oracle Application Server 10g Release 2 -10.1.2?
A OracleAS Web Cache 10g Release 2 (10.1.2) offers the following new features:
  • URL path prefix in site definitions.
  • Enabling and disabling caching rules.
  • Performance improvement in SSL termination.
  • Streamed delivery of compressed content.
  • Additional Oracle-ECID reporting in Web Cache logs.
  • Oracle Enterprise Manager Application Server Control support.

Q What is application-aware web caching?

OracleAS Web Cache understands the contents of HTTP headers -- including cookies -- and is capable of making caching and routing decisions based on administrator or application-defined caching rules. This makes it possible to cache different content for different categories of users, such as the ability to show full prices to new customers and discounted prices to returning customers.

The OracleAS Web Cache also can be configured to ensure the integrity of transactions, such as shopping cart purchases, by using cookies and session IDs for persistent, or "sticky", connections to web servers.

This reduces the complexity of selecting between feature-rich page design and application performance.