| <?xml version="1.0" encoding="ISO-8859-1"?> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head> |
| <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" /> |
| <!-- |
| XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
| This file is generated from xml source: DO NOT EDIT |
| XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
| --> |
| <title>Using Apache With Novell NetWare - Apache HTTP Server Version 2.4</title> |
| <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> |
| <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> |
| <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" /> |
| <script src="../style/scripts/prettify.min.js" type="text/javascript"> |
| </script> |
| |
| <link href="../images/favicon.ico" rel="shortcut icon" /></head> |
| <body id="manual-page"><div id="page-header"> |
| <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p> |
| <p class="apache">Apache HTTP Server Version 2.4</p> |
| <img alt="" src="../images/feather.png" /></div> |
| <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div> |
| <div id="path"> |
| <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Platform Specific Notes</a></div><div id="page-content"><div id="preamble"><h1>Using Apache With Novell NetWare</h1> |
| <div class="toplang"> |
| <p><span>Available Languages: </span><a href="../en/platform/netware.html" title="English"> en </a> | |
| <a href="../fr/platform/netware.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | |
| <a href="../ko/platform/netware.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> |
| </div> |
| |
| |
| <p>This document explains how to install, configure and run |
| Apache 2.0 under Novell NetWare 6.0 and above. If you find any bugs, |
| or wish to contribute in other ways, please use our |
| <a href="http://httpd.apache.org/bug_report.html">bug reporting |
| page.</a></p> |
| |
| <p>The bug reporting page and dev-httpd mailing list are |
| <em>not</em> provided to answer questions about configuration or |
| running Apache. Before you submit a bug report or request, first |
| consult this document, the <a href="http://wiki.apache.org/httpd/FAQ">Frequently Asked |
| Questions</a> page and the other relevant documentation topics. If |
| you still have a question or problem, post it to the <a href="news://developer-forums.novell.com/novell.devsup.webserver"> |
| novell.devsup.webserver</a> newsgroup, where many Apache users are |
| more than willing to answer new and obscure questions about using |
| Apache on NetWare.</p> |
| |
| <p>Most of this document assumes that you are installing Apache |
| from a binary distribution. If you want to compile Apache |
| yourself (possibly to help with development, or to track down |
| bugs), see the section on <a href="#comp">Compiling Apache for |
| NetWare</a> below.</p> |
| |
| </div> |
| <div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#req">Requirements</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#down">Downloading Apache for NetWare</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#inst">Installing Apache for NetWare</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#run">Running Apache for NetWare</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#use">Configuring Apache for NetWare</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#comp">Compiling Apache for NetWare</a></li> |
| </ul><h3>See also</h3><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div> |
| <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> |
| <div class="section"> |
| <h2><a name="req" id="req">Requirements</a></h2> |
| |
| |
| |
| <p>Apache 2.0 is designed to run on NetWare 6.0 service pack 3 |
| and above. If you are running a service pack less |
| than SP3, you must install the latest |
| <a href="http://developer.novell.com/ndk/libc.htm">NetWare Libraries |
| for C (LibC)</a>.</p> |
| |
| <p>NetWare service packs are available <a href="http://support.novell.com/misc/patlst.htm#nw">here</a>.</p> |
| |
| <p>Apache 2.0 for NetWare can also be run in a NetWare 5.1 environment |
| as long as the latest service pack or the latest version |
| of the <a href="http://developer.novell.com/ndk/libc.htm">NetWare Libraries |
| for C (LibC)</a> has been installed . <strong>WARNING:</strong> Apache 2.0 |
| for NetWare has not been targeted for or tested in this environment.</p> |
| |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> |
| <div class="section"> |
| <h2><a name="down" id="down">Downloading Apache for NetWare</a></h2> |
| |
| |
| |
| <p>Information on the latest version of Apache can be found on |
| the Apache web server at <a href="http://www.apache.org/">http://www.apache.org/</a>. This |
| will list the current release, any more recent alpha or |
| beta-test releases, together with details of mirror web and |
| anonymous ftp sites. Binary builds of the latest releases of |
| Apache 2.0 for NetWare can be downloaded from |
| <a href="http://www.apache.org/dist/httpd/binaries/netware">here</a>.</p> |
| |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> |
| <div class="section"> |
| <h2><a name="inst" id="inst">Installing Apache for NetWare</a></h2> |
| |
| |
| |
| <p>There is no Apache install program for NetWare currently. If you |
| are building Apache 2.0 for NetWare from source, you will need to |
| copy the files over to the server manually.</p> |
| |
| <p>Follow these steps to install Apache on NetWare from the |
| binary download (assuming you will install to |
| <code>sys:/apache2</code>):</p> |
| |
| <ul> |
| <li>Unzip the binary download file to the root of the <code>SYS:</code> |
| volume (may be installed to any volume)</li> |
| |
| <li>Edit the <code>httpd.conf</code> file setting <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code> and <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> along with any file path values |
| to reflect your correct server settings</li> |
| |
| <li>Add <code>SYS:/APACHE2</code> to the search path, for example: |
| <div class="example"><p><code>SEARCH ADD SYS:\APACHE2</code></p></div> |
| </li> |
| |
| </ul> |
| |
| <p>Follow these steps to install Apache on NetWare manually |
| from your own build source (assuming you will install to |
| <code>sys:/apache2</code>):</p> |
| |
| <ul> |
| <li>Create a directory called <code>Apache2</code> on a |
| NetWare volume</li> |
| |
| <li>Copy <code>APACHE2.NLM</code>, <code>APRLIB.NLM</code> |
| to <code>SYS:/APACHE2</code></li> |
| |
| <li>Create a directory under <code>SYS:/APACHE2</code> |
| called <code>BIN</code></li> |
| |
| <li>Copy <code>HTDIGEST.NLM</code>, <code>HTPASSWD.NLM</code>, |
| <code>HTDBM.NLM</code>, <code>LOGRES.NLM</code>, <code>ROTLOGS.NLM</code> |
| to <code>SYS:/APACHE2/BIN</code></li> |
| |
| <li>Create a directory under <code>SYS:/APACHE2</code> |
| called <code>CONF</code></li> |
| |
| <li>Copy the <code>HTTPD-STD.CONF</code> file to the |
| <code>SYS:/APACHE2/CONF</code> directory and rename to |
| <code>HTTPD.CONF</code></li> |
| |
| <li>Copy the <code>MIME.TYPES</code>, <code>CHARSET.CONV</code> and |
| <code>MAGIC</code> files to <code>SYS:/APACHE2/CONF</code> directory</li> |
| |
| <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\ICONS</code> |
| to <code>SYS:/APACHE2/ICONS</code></li> |
| |
| <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\MANUAL</code> |
| to <code>SYS:/APACHE2/MANUAL</code></li> |
| |
| <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\ERROR</code> |
| to <code>SYS:/APACHE2/ERROR</code></li> |
| |
| <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\DOCROOT</code> |
| to <code>SYS:/APACHE2/HTDOCS</code></li> |
| |
| <li>Create the directory <code>SYS:/APACHE2/LOGS</code> |
| on the server</li> |
| |
| <li>Create the directory <code>SYS:/APACHE2/CGI-BIN</code> |
| on the server</li> |
| |
| <li>Create the directory <code>SYS:/APACHE2/MODULES</code> |
| and copy all nlm modules into the <code>modules</code> directory</li> |
| |
| <li>Edit the <code>HTTPD.CONF</code> file searching for all |
| <code>@@Value@@</code> markers and replacing them with the |
| appropriate setting</li> |
| |
| <li>Add <code>SYS:/APACHE2</code> to the search path, for example: |
| <div class="example"><p><code>SEARCH ADD SYS:\APACHE2</code></p></div> |
| </li> |
| </ul> |
| |
| <p>Apache may be installed to other volumes besides the default <code>SYS</code> volume.</p> |
| |
| <p>During the build process, adding the keyword "install" to the makefile command line |
| will automatically produce a complete distribution package under the subdirectory |
| <code>DIST</code>. Install Apache by simply copying the distribution that was produced |
| by the makfiles to the root of a NetWare volume (see: <a href="#comp">Compiling Apache for |
| NetWare</a> below).</p> |
| |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> |
| <div class="section"> |
| <h2><a name="run" id="run">Running Apache for NetWare</a></h2> |
| |
| |
| |
| <p>To start Apache just type <code>apache</code> at the |
| console. This will load apache in the OS address space. If you |
| prefer to load Apache in a protected address space you may |
| specify the address space with the load statement as follows:</p> |
| |
| <div class="example"><p><code> |
| load address space = apache2 apache2 |
| </code></p></div> |
| |
| <p>This will load Apache into an address space called apache2. |
| Running multiple instances of Apache concurrently on NetWare is |
| possible by loading each instance into its own protected |
| address space.</p> |
| |
| <p>After starting Apache, it will be listening to port 80 |
| (unless you changed the <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> |
| directive in the configuration files). |
| To connect to the server and access the default page, |
| launch a browser and enter the server's name or address. This |
| should respond with a welcome page, and a link to the Apache |
| manual. If nothing happens or you get an error, look in the |
| <code>error_log</code> file in the <code>logs</code> |
| directory.</p> |
| |
| <p>Once your basic installation is working, you should |
| configure it properly by editing the files in the |
| <code>conf</code> directory.</p> |
| |
| <p>To unload Apache running in the OS address space just type |
| the following at the console:</p> |
| |
| <div class="example"><p><code> |
| unload apache2 |
| </code></p></div> |
| |
| <p>or</p> |
| |
| <div class="example"><p><code> |
| apache2 shutdown |
| </code></p></div> |
| |
| <p>If apache is running in a protected address space specify the |
| address space in the unload statement:</p> |
| |
| <div class="example"><p><code> |
| unload address space = apache2 apache2 |
| </code></p></div> |
| |
| <p>When working with Apache it is important to know how it will |
| find the configuration files. You can specify a configuration |
| file on the command line in two ways:</p> |
| |
| <ul> |
| <li><code>-f</code> specifies a path to a particular |
| configuration file</li> |
| </ul> |
| |
| <div class="example"><p><code> |
| apache2 -f "vol:/my server/conf/my.conf" |
| </code></p></div> |
| |
| <div class="example"><p><code> |
| apache -f test/test.conf |
| </code></p></div> |
| |
| <p>In these cases, the proper <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code> |
| should be set in the configuration file.</p> |
| |
| <p>If you don't specify a configuration file name with <code>-f</code>, |
| Apache will use the file name compiled into the server, usually |
| <code>conf/httpd.conf</code>. Invoking Apache with the <code>-V</code> |
| switch will display this value labeled as <code>SERVER_CONFIG_FILE</code>. |
| Apache will then determine its <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code> |
| by trying the following, in this order:</p> |
| |
| <ul> |
| <li>A <code>ServerRoot</code> directive via a |
| <code>-C</code> switch.</li> |
| |
| <li>The <code>-d</code> switch on the command line.</li> |
| |
| <li>Current working directory</li> |
| |
| <li>The server root compiled into the server.</li> |
| </ul> |
| |
| <p>The server root compiled into the server is usually <code>sys:/apache2</code>. |
| invoking apache with the <code>-V</code> switch will display this value labeled as |
| <code>HTTPD_ROOT</code>.</p> |
| |
| <p>Apache 2.0 for NetWare includes a set of command line directives that can |
| be used to modify or display information about the running instance of the |
| web server. These directives are only available while Apache is running. Each |
| of these directives must be preceded by the keyword <code>APACHE2</code>.</p> |
| |
| <dl> |
| <dt>RESTART</dt> |
| <dd>Instructs Apache to terminate all running worker |
| threads as they become idle, reread the configuration file and restart each |
| worker thread based on the new configuration.</dd> |
| |
| <dt>VERSION</dt> |
| <dd>Displays version information about the currently |
| running instance of Apache.</dd> |
| |
| <dt>MODULES</dt> |
| <dd>Displays a list of loaded modules both built-in |
| and external.</dd> |
| |
| <dt>DIRECTIVES</dt> |
| <dd>Displays a list of all available directives.</dd> |
| |
| <dt>SETTINGS</dt> |
| <dd>Enables or disables the thread status display |
| on the console. When enabled, the state of each running threads is displayed |
| on the Apache console screen.</dd> |
| |
| <dt>SHUTDOWN</dt> |
| <dd>Terminates the running instance of the Apache |
| web server.</dd> |
| |
| <dt>HELP</dt> |
| <dd>Describes each of the runtime directives.</dd> |
| </dl> |
| |
| <p>By default these directives are issued against the instance of Apache running |
| in the OS address space. To issue a directive against a specific instance running |
| in a protected address space, include the -p parameter along with the name of the |
| address space. For more information type "apache2 Help" on the command line.</p> |
| |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> |
| <div class="section"> |
| <h2><a name="use" id="use">Configuring Apache for NetWare</a></h2> |
| |
| |
| |
| <p>Apache is configured by reading configuration files usually stored |
| in the <code>conf</code> directory. These are the same as files used |
| to configure the Unix version, but there are a few different directives for |
| Apache on NetWare. See the <a href="../mod/">Apache module |
| documentation</a> for all the available directives.</p> |
| |
| <p>The main differences in Apache for NetWare are:</p> |
| |
| <ul> |
| <li> |
| <p>Because Apache for NetWare is multithreaded, it does not |
| use a separate process for each request, as Apache does on some Unix |
| implementations. Instead there are only threads running: a parent |
| thread, and multiple child or worker threads which handle the requests.</p> |
| |
| <p>Therefore the "process"-management directives are different:</p> |
| |
| <p><code class="directive"><a href="../mod/mpm_common.html#maxconnectionsperchild">MaxConnectionsPerChild</a></code> - |
| Like the Unix directive, this controls how many connections |
| a worker thread will serve before exiting. The recommended default, |
| <code>MaxConnectionsPerChild 0</code>, causes the thread to continue servicing |
| request indefinitely. It is recommended on NetWare, unless there is some |
| specific reason, that this directive always remain set to <code>0</code>.</p> |
| |
| <p><code class="directive"><a href="../mod/mpm_common.html#startthreads">StartThreads</a></code> - |
| This directive tells the server how many threads it should start initially. |
| The recommended default is <code>StartThreads 50</code>.</p> |
| |
| <p><code class="directive"><a href="../mod/mpm_common.html#minsparethreads">MinSpareThreads</a></code> - |
| This directive instructs the server to spawn additional worker threads |
| if the number of idle threads ever falls below this value. The recommended |
| default is <code>MinSpareThreads 10</code>.</p> |
| |
| <p><code class="directive"><a href="../mod/mpm_common.html#maxsparethreads">MaxSpareThreads</a></code> - |
| This directive instructs the server to begin terminating worker threads |
| if the number of idle threads ever exceeds this value. The recommended |
| default is <code>MaxSpareThreads 100</code>.</p> |
| |
| <p><code class="directive"><a href="../mod/mpm_netware.html#maxthreads">MaxThreads</a></code> - |
| This directive limits the total number of work threads to a maximum |
| value. The recommended default is <code>ThreadsPerChild 250</code>.</p> |
| |
| <p><code class="directive"><a href="../mod/mpm_common.html#threadstacksize">ThreadStackSize</a></code> - |
| This directive tells the server what size of stack to use |
| for the individual worker thread. The recommended default |
| is <code>ThreadStackSize 65536</code>.</p> |
| </li> |
| |
| <li> |
| <p>The directives that accept filenames as arguments must use |
| NetWare filenames instead of Unix names. However, because Apache |
| uses Unix-style names internally, forward slashes must be used |
| rather than backslashes. It is recommended that all rooted file paths |
| begin with a volume name. If omitted, Apache will assume the |
| <code>SYS:</code> volume which may not be correct.</p> |
| </li> |
| |
| <li> |
| <p>Apache for NetWare has the ability to load modules at |
| runtime, without recompiling the server. If Apache is |
| compiled normally, it will install a number of optional |
| modules in the <code>\Apache2\modules</code> directory. |
| To activate these, or other modules, the <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directive |
| must be used. For example, to active the status module, use |
| the following:</p> |
| |
| <div class="example"><p><code> |
| LoadModule status_module modules/status.nlm |
| </code></p></div> |
| |
| <p>Information on <a href="../mod/mod_so.html#creating">creating loadable |
| modules</a> is also available.</p> |
| </li> |
| </ul> |
| |
| <h3><a name="use-add" id="use-add">Additional NetWare specific directives:</a></h3> |
| |
| |
| |
| <ul> |
| <li><code class="directive"><a href="../mod/core.html#cgimapextension">CGIMapExtension</a></code> - |
| This directive maps a CGI file extension to a script interpreter.</li> |
| </ul> |
| <ul> |
| <li><code class="directive"><a href="../mod/mod_nw_ssl.html#securelisten">SecureListen</a></code> - |
| Enables SSL encryption for a specified port.</li> |
| </ul> |
| <ul> |
| <li><code class="directive"><a href="../mod/mod_nw_ssl.html#nwssltrustedcerts">NWSSLTrustedCerts</a></code> - |
| Adds trusted certificates that are used to create secure connections to proxied servers.</li> |
| </ul> |
| <ul> |
| <li><code class="directive"><a href="../mod/mod_nw_ssl.html#nwsslupgradeable">NWSSLUpgradeable</a></code> - |
| Allow a connection created on the specified address/port to be upgraded to an SSL connection.</li> |
| </ul> |
| |
| |
| |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> |
| <div class="section"> |
| <h2><a name="comp" id="comp">Compiling Apache for NetWare</a></h2> |
| |
| |
| |
| <p>Compiling Apache requires MetroWerks CodeWarrior 6.x or higher. Once |
| Apache has been built, it can be installed to the root of any NetWare |
| volume. The default is the <code>sys:/Apache2</code> directory.</p> |
| |
| <p>Before running the server you must fill out the <code>conf</code> |
| directory. Copy the file <code>HTTPD-STD.CONF</code> from the distribution |
| <code>conf</code> directory and rename it to <code>HTTPD.CONF</code>. |
| Edit the <code>HTTPD.CONF</code> file searching for all <code>@@Value@@</code> |
| markers and replacing them with the appropriate setting. Copy over |
| the <code>conf/magic</code> and <code>conf/mime.types</code> files as well. |
| Alternatively, a complete distribution can be built by including the keyword |
| <code>install</code> when invoking the makefiles.</p> |
| |
| <h3><a name="comp-req" id="comp-req">Requirements:</a></h3> |
| |
| |
| |
| <p>The following development tools are required to build |
| Apache 2.0 for NetWare:</p> |
| |
| <ul> |
| <li>Metrowerks CodeWarrior 6.0 or higher with the |
| <a href="http://developer.novell.com/ndk/cwpdk.htm">NetWare PDK 3.0</a> |
| or higher.</li> |
| |
| <li><a href="http://developer.novell.com/ndk/libc.htm">NetWare Libraries |
| for C (LibC)</a></li> |
| |
| <li><a href="http://developer.novell.com/ndk/cldap.htm">LDAP Libraries |
| for C</a></li> |
| |
| <li><a href="http://www.gzip.org/zlib/">ZLIB Compression Library source code</a></li> |
| |
| <li>AWK utility (awk, gawk or similar). AWK can be downloaded from |
| <a href="http://developer.novell.com/ndk/apache.htm">http://developer.novell.com/ndk/apache.htm</a>. |
| The utility must be found in your windows path and must be named <code>awk.exe</code>.</li> |
| |
| <li>To build using the makefiles, you will need GNU make version 3.78.1 (GMake) available at |
| <a href="http://developer.novell.com/ndk/apache.htm">http://developer.novell.com/ndk/apache.htm</a>.</li> |
| </ul> |
| |
| |
| |
| <h3><a name="comp-make" id="comp-make">Building Apache using the NetWare makefiles:</a></h3> |
| |
| |
| |
| <ul> |
| <li>Set the environment variable <code>NOVELLLIBC</code> to the |
| location of the NetWare Libraries for C SDK, for example: |
| <div class="example"><p><code>Set NOVELLLIBC=c:\novell\ndk\libc</code></p></div> |
| </li> |
| |
| <li>Set the environment variable <code>METROWERKS</code> to the |
| location where you installed the Metrowerks CodeWarrior compiler, |
| for example: |
| <div class="example"><p><code>Set METROWERKS=C:\Program Files\Metrowerks\CodeWarrior</code></p></div> |
| If you installed to the default location <code>C:\Program |
| Files\Metrowerks\CodeWarrior</code>, you don't need to set this.</li> |
| |
| <li>Set the environment variable <code>LDAPSDK</code> to the |
| location where you installed the LDAP Libraries for C, for example: |
| <div class="example"><p><code>Set LDAPSDK=c:\Novell\NDK\cldapsdk\NetWare\libc</code></p></div> |
| </li> |
| |
| <li>Set the environment variable <code>ZLIBSDK</code> to the |
| location where you installed the source code for the ZLib Library, |
| for example: |
| <div class="example"><p><code>Set ZLIBSDK=D:\NOVELL\zlib</code></p></div> |
| </li> |
| |
| <li>Set the environment variable <code>PCRESDK</code> to the location |
| where you installed the source code for the PCRE Library, for example: |
| <div class="example"><p><code>Set PCRESDK=D:\NOVELL\pcre</code></p></div> |
| </li> |
| |
| <li>Set the environment variable <code>AP_WORK</code> to the full path of |
| the <code>httpd</code> source code directory. |
| <div class="example"><p><code>Set AP_WORK=D:\httpd-2.0.x</code></p></div> |
| </li> |
| |
| <li>Set the environment variable <code>APR_WORK</code> to the full path of |
| the <code>apr</code> source code directory. Typically <code>\httpd\srclib\apr</code> |
| but the APR project can be outside of the httpd directory structure. |
| <div class="example"><p><code>Set APR_WORK=D:\apr-1.x.x</code></p></div> |
| </li> |
| |
| <li>Set the environment variable <code>APU_WORK</code> to the full path of |
| the <code>apr-util</code> source code directory. Typically <code>\httpd\srclib\apr-util</code> |
| but the APR-UTIL project can be outside of the httpd directory structure. |
| <div class="example"><p><code>Set APU_WORK=D:\apr-util-1.x.x</code></p></div> |
| </li> |
| |
| <li>Make sure that the path to the AWK utility and the GNU make utility |
| (<code>gmake.exe</code>) have been included in the system's |
| <code>PATH</code> environment variable.</li> |
| |
| <li>Download the source code and unzip to an appropriate directory on |
| your workstation.</li> |
| |
| <li>Change directory to <code>\httpd-2.0</code> and build the prebuild utilities |
| by running "<code>gmake -f nwgnumakefile prebuild</code>". This target will create |
| the directory <code>\httpd-2.0\nwprebuild</code> and copy each of the utilities |
| to this location that are necessary to complete the following build steps. |
| </li> |
| |
| <li>Copy the files <code>\httpd-2.0\nwprebuild\GENCHARS.nlm</code> and |
| <code>\httpd-2.0\nwprebuild\DFTABLES.nlm</code> to the <code>SYS:</code> volume of a |
| NetWare server and run them using the following commands: |
| <div class="example"><p><code> |
| SYS:\genchars > sys:\test_char.h<br /> |
| SYS:\dftables sys:\chartables.c<br /> |
| </code></p></div> |
| </li> |
| |
| <li>Copy the files <code>test_char.h</code> and <code>chartables.c</code> |
| to the directory <code>\httpd-2.0\os\netware</code> on the build machine.</li> |
| |
| <li>Change directory to <code>\httpd-2.0</code> and build Apache by running |
| "<code>gmake -f nwgnumakefile</code>". You can create a distribution directory by |
| adding an install parameter to the command, for example: |
| <div class="example"><p><code>gmake -f nwgnumakefile install</code></p></div> |
| </li> |
| </ul> |
| |
| |
| |
| <h3><a name="comp-add" id="comp-add">Additional make options</a></h3> |
| |
| |
| |
| <ul> |
| <li><code>gmake -f nwgnumakefile</code><p>Builds release versions of all of the |
| binaries and copies them to a <code>\release</code> destination directory.</p></li> |
| |
| <li><code>gmake -f nwgnumakefile DEBUG=1</code><p>Builds debug versions of all of the |
| binaries and copies them to a <code>\debug</code> destination directory.</p></li> |
| |
| <li><code>gmake -f nwgnumakefile install</code><p>Creates a complete Apache |
| distribution with binaries, docs and additional support files in a |
| <code>\dist\Apache2</code> directory.</p></li> |
| |
| <li><code>gmake -f nwgnumakefile prebuild</code><p>Builds all of the prebuild utilities |
| and copies them to the <code>\nwprebuild</code> directory.</p></li> |
| |
| <li><code>gmake -f nwgnumakefile installdev</code><p>Same as install but also creates a |
| <code>\lib</code> and <code>\include</code> directory in the destination directory |
| and copies headers and import files.</p></li> |
| |
| <li><code>gmake -f nwgnumakefile clean</code><p>Cleans all object files and binaries |
| from the <code>\release.o</code> or <code>\debug.o</code> build areas depending on whether |
| <code>DEBUG</code> has been defined.</p></li> |
| |
| <li><code>gmake -f nwgnumakefile clobber_all</code><p>Same as clean and also deletes |
| the distribution directory if it exists.</p></li> |
| </ul> |
| |
| |
| |
| <h3><a name="comp-add-env" id="comp-add-env">Additional environment variable options</a></h3> |
| |
| |
| |
| <ul> |
| <li>To build all of the experimental modules, set the environment |
| variable <code>EXPERIMENTAL</code>: |
| <div class="example"><p><code>Set EXPERIMENTAL=1</code></p></div> |
| </li> |
| |
| <li>To build Apache using standard BSD style sockets rather than |
| Winsock, set the environment variable <code>USE_STDSOCKETS</code>: |
| <div class="example"><p><code>Set USE_STDSOCKETS=1</code></p></div> |
| </li> |
| |
| </ul> |
| |
| |
| |
| <h3><a name="comp-mod_ssl" id="comp-mod_ssl">Building mod_ssl for the NetWare platform</a></h3> |
| |
| |
| |
| <p>By default Apache for NetWare uses the built-in module |
| <code class="module"><a href="../mod/mod_nw_ssl.html">mod_nw_ssl</a></code> to provide SSL services. This module |
| simply enables the native SSL services implemented in NetWare OS |
| to handle all encryption for a given port. Alternatively, mod_ssl |
| can also be used in the same manner as on other platforms.</p> |
| |
| <p>Before mod_ssl can be built for the NetWare platform, the OpenSSL |
| libraries must be provided. This can be done through the following |
| steps:</p> |
| |
| <ul> |
| <li>Download the recent OpenSSL 0.9.8 release source code from the |
| <a href="http://www.openssl.org/source/">OpenSSL Source</a> |
| page (older 0.9.7 versions need to be patched and are therefore not |
| recommended).</li> |
| |
| <li>Edit the file <code>NetWare/set_env.bat</code> and modify any |
| tools and utilities paths so that they correspond to your build |
| environment.</li> |
| |
| <li>From the root of the OpenSSL source directory, run the following |
| scripts: |
| <div class="example"><p><code> |
| Netware\set_env netware-libc<br /> |
| Netware\build netware-libc |
| </code></p></div> |
| For performance reasons you should enable to build with ASM code. |
| Download NASM from the <a href="http://nasm.sourceforge.net/">SF site</a>. |
| Then configure OpenSSL to use ASM code: |
| <div class="example"><p><code> |
| Netware\build netware-libc nw-nasm enable-mdc2 enable-md5 |
| </code></p></div> |
| Warning: dont use the CodeWarrior Assembler - it produces broken code! |
| </li> |
| |
| <li>Before building Apache, set the environment variable |
| <code>OSSLSDK</code> to the full path to the root of the openssl |
| source code directory, and set WITH_MOD_SSL to 1. |
| <div class="example"><p><code> |
| Set OSSLSDK=d:\openssl-0.9.8x<br /> |
| Set WITH_MOD_SSL=1 |
| </code></p></div></li> |
| |
| </ul> |
| |
| |
| |
| </div></div> |
| <div class="bottomlang"> |
| <p><span>Available Languages: </span><a href="../en/platform/netware.html" title="English"> en </a> | |
| <a href="../fr/platform/netware.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | |
| <a href="../ko/platform/netware.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> |
| </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> |
| <script type="text/javascript"><!--//--><![CDATA[//><!-- |
| var comments_shortname = 'httpd'; |
| var comments_identifier = 'http://httpd.apache.org/docs/2.4/platform/netware.html'; |
| (function(w, d) { |
| if (w.location.hostname.toLowerCase() == "httpd.apache.org") { |
| d.write('<div id="comments_thread"><\/div>'); |
| var s = d.createElement('script'); |
| s.type = 'text/javascript'; |
| s.async = true; |
| s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; |
| (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); |
| } |
| else { |
| d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); |
| } |
| })(window, document); |
| //--><!]]></script></div><div id="footer"> |
| <p class="apache">Copyright 2019 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> |
| <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- |
| if (typeof(prettyPrint) !== 'undefined') { |
| prettyPrint(); |
| } |
| //--><!]]></script> |
| </body></html> |