[0001] [0002] [0003] [0004] [0005] [0006] [0007] [0008] [0009] [0010] [0011] [0012] [0013] [0014] [0015] [0016] [0017] [0018] [0019] [0020] [0021] [0022] [0023] [0024] [0025] [0026] [0027] [0028] [0029] [0030] [0031] [0032] [0033] [0034] [0035] [0036] [0037] [0038] [0039] [0040] [0041] [0042] [0043] [0044] [0045] [0046] [0047] [0048] [0049] [0050] [0051] [0052] [0053] [0054] [0055] [0056] [0057] [0058] [0059] [0060] [0061] [0062] [0063] [0064] [0065] [0066] [0067] [0068] [0069] [0070] [0071] [0072] [0073] [0074] [0075] [0076] [0077] [0078] [0079] [0080] [0081] [0082] [0083] [0084] [0085] [0086] [0087] [0088] [0089] [0090] [0091] [0092] [0093] [0094] [0095] [0096] [0097] [0098] [0099] [0100] [0101] [0102] [0103] [0104] [0105] [0106] [0107] [0108] [0109] [0110] [0111] [0112] [0113] [0114] [0115] [0116] [0117] [0118] [0119] [0120] [0121] [0122] [0123] [0124] [0125] [0126] [0127] [0128] [0129] [0130] [0131] [0132] [0133] [0134] [0135] [0136] [0137] [0138] [0139] [0140] [0141] [0142] [0143] [0144] [0145] [0146] [0147] [0148] [0149] [0150] [0151] [0152] [0153] [0154] [0155] [0156] [0157] [0158] [0159] [0160] [0161] [0162] [0163] [0164] [0165] [0166] [0167] [0168] [0169] [0170] [0171] [0172] [0173] [0174] [0175] [0176] [0177] [0178] [0179] [0180] [0181] [0182] [0183] [0184] [0185] [0186] [0187] [0188] [0189] [0190] [0191] [0192] [0193] [0194] [0195] [0196] [0197] [0198] [0199] [0200] [0201] [0202] [0203] [0204] [0205] [0206] [0207] [0208] [0209] [0210] [0211] [0212] [0213] [0214] [0215] [0216] [0217] [0218] [0219] [0220] [0221] [0222] [0223] [0224] [0225] [0226] [0227] [0228] [0229] [0230] [0231] [0232] [0233] [0234]
|1New to WASD? Start Here!| |0Welcome!| |^ WASD is outlined in the |link%|../features/##Introduction| and |link%|../features/##Package Overview| sections of the |link%|../features/##|WASD Features| document. |^ There are a number of approaches to installing and updating a WASD package. |^-The |/vanilla recipes| are |link|Installation| and |link|Update| but there are |link|Other Ways to Deploy||. |^ This section provides a quick guide to getting your WASD package installed, configured and serving. |number| |item| |*Unzip Package|| |^ Install the files following the guidelines in |link|Installation||. |^- |*Note| that more than one archive may be needed (|link|Source Archive, Object Module Archives)||). |^ If |*Transport Layer Security| (TLS - a.k.a. |*Secure Sockets Layer|| - SSL) is to be used and a TLS/SSL server image to be built the WASD [Open]SSL product must be installed at this stage (see |link%|../features/##TLS/SSL Functionality Sources++of++WASD Features and Facilities||). An existing VSI SSL111 for OpenVMS product (all based on OpenSSL 1.0.2 and earlier obsolete) requires no additional step. If the WASD [Open]SSL package it must UNZIPed into the [.WASD_ROOT] tree at this stage. |code| $ UNZIP -d [.WASD_ROOT] device:[dir]OPENSSLWASD|/nnn-arch||.ZIP |!code| |^ Note the use of the |*."-d" switch||. |item| |*INSTALL Package|| |^ Server installation is performed using the INSTALL.COM procedure (|link|INSTALL.COM procedure||). |bullet| |item| |*Build Package |-| | Compile and link, or just link supplied object files to produce VMS executables for the system's version of VMS. |item| |*Check Package |-| | Check basic operation of the package (|link|Quick Check||). |item| |*Create Server and Scripting Accounts |-| | Create two independent accounts, one for executing the server, the other for executing scripts (|link|VMS Server Account||). If quotas are enabled on the target disk provides an ambit allocation for these accounts. Review this at some stage. |item| |*Set Package Security |-| | This sections traverses the newly installed tree and sets all package directories and files to required levels of access (|link%|../config/##Maintaining Package Security++in++WASD Configuration||). |item| |*Copy Support and Configuration Files |-| | Copy the example server support and configuration files (|link|Account Support Files||). |item| |*Install Scripts |-| | Selectively copy groups of scripts from package build directories into the scripting directories. |!bullet| |item| |*Configure Package|| |^ Following the execution of the INSTALL.COM procedure the package should require only minor, further configuration. |^ |*Initially| two files may require alteration. |number| |item| The startup file, possibly to set the local WASD_CONFIG_GMT logical (for systems not supporting DTSS (e.g. DECnet-Plus)). Consider using the STARTUP_LOCAL.COM file for other site-specific requirements (|link|Account Support Files||). |item| The only configuration that should require immediate attention will be the mapping rules (|link%|../config/##Request Processing Configuration++in++WASD Configuration||). |!number| |^ |*More generally| server runtime configuration involves the considerations discussed in |link%|../config/##Site Organisation++of++WASD Configuration| along with the following aspects: |bullet| |item| Configuring the HTTP server run-time characteristics (|link%|../config/##Configuration Considerations++in++WASD Configuration||). |item| Mapping request paths to the VMS file system, and to other things such as scripts (|link%|../config/##Request Processing Configuration++in++WASD Configuration||). |item| Customizing some or all messages (|link%|../config/##Message Configuration++in++WASD Configuration||). |item| Establishing an authentication and authorization environment (|link%|../config/##Authorization Configuration (Basics)++in++WASD Configuration||). |!bullet| |item| |*Start Server|| |^ Execute the startup procedure (|link|STARTUP.COM||). Get your browser and connect! |item| |*Find Out What's Wrong| |'_frowny.\ | |^ Of course |/something| will not be right! This can happen with the initial configuration and sometimes when changing configuration. The server provides information messages in the run-time log, look in the WASD_ROOT:[LOG_SERVER] directory. |^ Remember, the basic installation's integrity can always be checked as described in |link|Quick-Check||). This uses the configuration files from the [EXAMPLE] directory, so provided these have not been altered the server should execute in |/demonstration mode| correctly. |^ Can't resolve it? See |link|Reporting Problems||. |!number| |2Using IA64-hosted X86 Cross-Complier?| |^ Until a native X86 C compiler becomes available all WASD package and additional application builds must be done in two phases. |number| |item| cross-compile on an IA64 system |item| link resulting object file(s) on the X86 system |!number| |^ When building using the cross-compiler tools the procedures recognise the XCC$COMPILER environment and adjust to create and use |= [.OBJ_X86_64]| object code directories. |^ For example; to build WASD package: |number| |item| On IA64 ensure |= @SYS$MANAGER:X86_XTOOLS$SYLOGIN.COM| and then select "3. Compile only" and complete the compilation. |bullet| |item| For clustered IA64/X86 with an MSCP-mounted volume containing a shared |= [WASD_ROOT]| the appropriate object files are now available to the X86 system. |^ Proceed with the second phase. |item| For non-clustered build environments the same WASD kit must be installed on both IA64 and X86 systems. After compilation the resulting |= [.OBJ_X86_64]| directories must be ZIPed into an archive, transferred to the X86 system and restored into the corresponding |= [WASD_ROOT]||. |^ For example: |code| IA64$ SET DEFAULT |/device||:[WASD_ROOT] IA64$ ZIP "-V" |/location||:X86_1200_OBJ.ZIP [...OBJ_X86_64]*.OBJ |!code| |code| X86$ SET DEFAULT |/device||:[WASD_ROOT] X86$ UNZIP |/location||:X86_1200_OBJ.ZIP |!code| |^ Proceed with the second phase. |!bullet| |item| On X86 perform the corresponding "2. linking (separate package) object modules", and continue the rest of the installation. |!number| |2Troubleshooting?| |^ When initially installing or configuring WASD, and sometimes later where something breaks spectacularly, it is most useful to be able to gain insight into what the server is up to. |^ The |/go-to| tool is\ |"<span style=\"font-size:110%\">WATCH</span>||\ (yes, all capitals, and for no other reason than it makes it stand out). |^ WATCH is described in detail in |link%|../features/##WATCH Facility++of the++WASD Features and Facilities|| document. |^ For most circumstances WATCH can be made available for troubleshooting even if the configuration is significantly broken. This is done by using a skeleton-key to authorise special access into the server. |^ The skeleton-key is described in detail in |link%|../features/##Skeleton-Key Authentication++of the++WASD Features and Facilities|| document. |^ |*TL;DR| |^ Enable at the command-line with the username anything beginning with an underscore and at least 8 characters, same for the password length. |code| $ HTTPD /DO=AUTH=SKELKEY=_|/username||:|/password|| |!code| |^ Then using a browser access any available service, entering the above username (including underscore) and password when prompted. |block| |link%|/httpd/-/admin/report/WATCH|https://\<i\>the.host.name:port\</i\>\ /httpd/-/admin/report/WATCH| |!block| |^ The service administration facilities (of which WATCH is one) are also available and useful. |block| |link%|/httpd/-/admin/|https://\<i\>the.host.name:port\</i\>\ /httpd/-/admin/| |!block|