STRWWW


STRWWW - Start World Wide Web Server

The STRWWW command is used to start the Web Server on the AS/400. Starting the server allows users to connect to and receive documents from the AS/400 using Web browsers.

TCP/IP must be started on the AS/400 with the STRTCP command before the Web Server can be started.

The server jobs, advanced configuration, and performance topics contain further information about the server.


STRWWW Parameters

CFGFILE - Master Configuration File
Specifies the full-path to the master configuration file to be used by the server. The master configuration file contains many values that are used to control how the server starts and runs.

The default master configuration file is '/WWWServ/Cfg/WebServ.Cfg'. This file can be copied (e.g., using the CPY command) and changed using the configuration commands to create custom master configuration files.

STRWWW sets the PORT, RPS and SVRID parameter values based on what is configured in the master configuration file unless the parameters are passed into the command.

For special processing needs, the server can be configured with multihome processing enabled.

PORT - Socket Port
The socket port the server is going to process. Refer to the socket port configuration value for more information.

RPS - Initial Request Processors
The initial number of request processors to start when the server is started. Refer to the initial request processors configuration value for more information.

SVRID - Server Identifier
A unique ID used to identify the server and the server's jobs. Refer to the server ID configuration value for more information. The default is to use the configured value.

If a server ID is not entered or configured, the server port and host are used to uniquely identify the server when starting additional request processors, ending request processors and ending the server; otherwise the entered/configured server ID is used to uniquely identify the server.

PASSWORD - Password
The current password used to encrypt the server's keylist file. This parameter is required when running the server using a secure protocol (i.e., SSL), which requires Commerce Server/400. The keylist file password was initially set with the CRTWWWKEY command. The password can be changed with the CHGWWWKPWD command. If the password is case-sensitive it must be enclosed in single quotes.

ACTKEY - Product Activation Key
The product activation key is an additional parameter that is required when starting the server for the first time. The server will not start until a valid activation key is provided. The key is no longer required once the server has successfully started once.

The activation key is provided by your supplier with the product tape. If the activation key was not sent, does not work, or your system serial number has changed contact your supplier.

ENDDATE - Trial Activation Key End Date
The ending date for the trial activation key. The date must be specified in the job date format.

TCPTIMO - TCP/IP Timeout
The number of minutes to wait for TCP/IP to start. This parameter is used when TCP/IP has not been completely started before starting Web Server/400. Web Server/400 will wait up to the specified minutes for TCP/IP to be started. The default is to wait 10 minutes.

Authority Considerations

  1. A user that does not have *ALLOBJ special authority must be authorized as follows to run the STRWWW command:
  2. The Server user profile must be authorized as follows to start the server:
  3. The system value QALWUSRDMN must be set to allow user-domain objects to be created in libraries QTEMP and WWWSERVER.

  4. A user must meet one of the following conditions to modify or end the started server:

Server does not Start

If the server does not start consult the following for more information:
  1. Display the joblog (e.g., DSPJOBLOG)
  2. Work with and display the server user profile spooled files (e.g., WRKSPLF SELECT(WWWUSER)).
Correct the problem and try to start the server again.

Server Jobs

When performing a WRKACTJOB command after starting the Web Server with multihome disabled using the default server ID the server jobs can be identified as follows:
   Subsystem/Job  User        Type  CPU %  Function        Status
   QSYSWRK        QSYS        SBS      .0                   DEQW
     WWD80        WWWUSER     BCH      .0  PGM-WWWDAEMON    TIMW
     WWL80        WWWUSER     BCH      .0  PGM-WWWDLOG      DEQW
     WWR80        WWWUSER     BCH      .0  PGM-WWWDRP       DEQW
     WWR80        WWWUSER     BCH      .0  PGM-WWWDRP       DEQW

When multihome is enabled using configured server IDs the server jobs can be identified as follows:
   Subsystem/Job  User        Type  CPU %  Function        Status
   QSYSWRK        QSYS        SBS      .0                   DEQW
     WWDINET      WWWUSER     BCH      .0  PGM-WWWDAEMON    TIMW
     WWDKAZOO     WWWUSER     BCH      .0  PGM-WWWDAEMON    SELW
     WWLINET      WWWUSER     BCH      .0  PGM-WWWDLOG      DEQW
     WWLKAZOO     WWWUSER     BCH      .0  PGM-WWWDLOG      DEQW
     WWRINET      WWWUSER     BCH      .0  PGM-WWWDRP       DEQW
     WWRKAZOO     WWWUSER     BCH      .0  PGM-WWWDRP       DEQW
     WWRKAZOO     WWWUSER     BCH      .0  PGM-WWWDRP       DEQW

where,

WWWUSER
is the default server user profile. All server jobs run under the configured server user profile. WWWUSER's profile is setup to use the WWWSERVER/WWWJOBD job description, which is configured to use the QSYS/QSYSNOMAX job queue.

QSYSWRK
is the subsystem where the server jobs are running. The QSYSNOMAX job queue is configured to run multiple active jobs in the QSYSWRK subsystem.

WWDxx
is the server. One server job exists to handle requests for a single host and port. The server job accepts the request and immediately passes it on to a request processor.

The name of the server job is WWD appended with the server identifier. In the first set of jobs a single server is running with the default server ID of '80', which is the port the server is processing. The second set of jobs show two servers running with configured server IDs: 'INET' and 'KAZOO'.

The host and port(s) the server is processing can be displayed by performing the following command:

DSPOBJD OBJ(WWWSERVER/WWQxx) OBJTYPE(*USRQ) DETAIL(*FULL)

where the name of the user queue is the same as the server job name except for the D is replaced with a Q. The displayed user queue text contains the port(s) and host that the server is processing. For example,

Text . . . . : PORT: 80 HOST: www.inetmi.com
Text . . . . : PORT: 80/443 HOST: www.inetmi.com

indicates the server is processing host 'www.inetmi.com' on port 80. The second example is running the Commerce Server/400; HTTP protocol is being processed on port 80 and SSL is being processed on port 443.

WWLxx
is the log server. The log server is used to write out the server access and error logs. One log server job exists to handle requests for a single host and port. The xx characters represent the server ID.

WWRxx
are the server request processors. Each host and port can have many request processors. Each request is handled to completion by a single request processor. The xx characters represent the server ID.

Advanced Configuration

Server Jobs
The server user profile (e.g., WWWUSER) configuration controls how the server jobs are run. All of the attributes for the server jobs are retrieved from the server user profile and the profile's configured job description. The server user profile's job description defines the job queue that is used to submit the server jobs. The configured job queue must support multiple active jobs (e.g., QSYSNOMAX). Also, the job description's routing data (e.g., RUNPTY20) must be setup appropriately for the job queue and subsystem that is being used. The ability to change the server user profile and job description gives you the ability to configure how you want the server to run on your system.

Library List
The user part of the library list for the server jobs can be controlled with the Initial Library List configuration value.

Server Performance

The server performance is affected by many factors: Improving any of the factors above can lead to increased server throughput.

By default, TCP/IP, Client Access/400 and Web Server/400 jobs run in the *BASE pool (i.e., system pool 2). Server performance can be improved by reducing the number of page faults in the *BASE pool by adjusting the pool sizes. Also, advanced configuration provides information that can be used to customize how the server runs on your system.