You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by "William A. Rowe, Jr." <wr...@lnd.com> on 2000/06/05 20:39:29 UTC

RE: cvs commit: apache-1.3/src/os/win32 service.c service.h

> From: wrowe@locus.apache.org [mailto:wrowe@locus.apache.org]
> Sent: Monday, June 05, 2000 1:05 PM
> 
>   Index: STATUS
>   ===================================================================
>   +    * Assure the windows.html reflects reality, today.
>   +        - running the service as a user other than SYSTEM (NT/2000).
>   +        - CONDITIONALLY - if someone posts revisions to the list for
>   +          htdocs/manual/windows.html to properly document JJK's Win95
>   +          services support as a -HIGHLY EXPERIMENTAL- patch,
>   +          OtherBill will include that patch (with -k runservice rather
>   +          than -s, not documented in the -h list of options, and with
>   +          FreeConsole() -following- successful parsing of httpd.conf).
>   +          Too many are complaining, -but- 3+ Win95 users must step up
>   +          to test this new patch offered late Mon eve before we proceed.

Ok, explanation...

I've had several sideband comments about this side of JJK's patch.  It took
considerable rework to get it to integrate well into 2.0, but I did start
in my devel 1.3.x tree.  So it is already there.

If those who want this patch applied will speak up to the list, and one will
offer a patch to the windows.html docs to bring that up to this patch,
and several will commit to testing the revised patch, I'll go for it.

HOWEVER, it must be clearly marked -HIGHLY EXPERIMENTAL- (for this rev).
If it works well, and we don't see the complaints, then we will remove
that caviat for 2.0 :-)  We must warn them that if it works -at all- we
can not attest to it's reliability or future support of that feature.

My original thought - "This is a new feature"... didn't hold water.  If we
are going to deploy in 2.0, why not get it tested in 1.3.13?  That affords
us the best confidence in a clean 2.0 release.  Also, several complained
that they were needing that feature now, not in several months or whenever
2.0 gets rolling into beta.  [beta 2.0 should be stronger than Win32 1.3!]



RE: cvs commit: apache-1.3/src/os/win32 service.c service.h

Posted by Andrew Braund <ab...@mail.com>.
> If those who want this patch applied will speak up to the list, and one will
> offer a patch to the windows.html docs to bring that up to this patch,
> and several will commit to testing the revised patch, I'll go for it.
> 

I will test the revised patch.
I am now starting on windows.html revisions.

Regards
Andrew Braund

RE: [PATCH] RE: cvs commit: apache-1.3/src/os/win32 service.c service.h

Posted by Andrew Braund <ab...@mail.com>.
Revised patch to win_compiling.html incorporating sugestions.

> > Other Comments;
> > Makefile.win is a Windows (only) make file so why can't it copy the
> > conf\*.conf-dist-win, conf\mime.types, conf\magic and htdocs\*.*
> files to the
> > ServerRoot directory? Would this be a good thing/worth doing?
>
> Hmmm.  Interesting, although often one is building the tree in the manner
> it is distributed, that is src is the folder within the ServerRoot, and
> the INSTDIR=.. - but this gives me an even more interesting idea; if the
> httpd.conf is not found, and httpd.conf-dist-win is present, autogenerate
> a proper httpd.conf on startup?

Sounds good.

For now I have left the copy commands in the docs (with warnings).
Do with them as you see fit.


--- old_win_compiling.html	Thu May 11 13:09:18 2000
+++ win_compiling.html	Wed Jun  7 00:48:14 2000
@@ -20,7 +20,7 @@
    See <A HREF="windows.html">Using Apache with Microsoft Windows</A>
    before you begin.</P>

-<P>Compiling Apache requires Microsoft Visual C++ 5.0 to be properly
+<P>Compiling Apache requires Microsoft Visual C++ 5.0 (or 6.0) to be properly
    installed. It is easiest to compile with the command-line tools
    (nmake, <EM>etc.</EM>..). Consult the VC++ manual to determine how
    to install them.  Be especially aware that the vcvars32.bat file
@@ -43,6 +43,12 @@
    information in the resulting files, making it easier to find bugs and
    track down problems.</P>

+<P>If you get an error such as "the name specified is not recognized..."
+ then you need to run vcvars32.bat first. Enter the following command;<br>
+  "c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT"<br>
+ (you will need to adjust this so it matches where your VC was installed) then
+ try the nmake command again.</P>
+
 <P>Apache can also be compiled using VC++'s Visual Studio development
    environment.  To simplify this process, a Visual Studio workspace,
    Apache.dsw, is provided in the src folder.  This workspace exposes
@@ -95,28 +101,28 @@
    root directory. The default is the <CODE>\Apache</CODE>
    directory, on the current hard drive.</P>

-<P>To install the files into the <CODE>\Apache</CODE> directory
+<P>To install the files into the <CODE>c:\ServerRoot</CODE> directory
    automatically, use one the following nmake commands (see above):</P>
 <UL>
-<LI><CODE>nmake /f Makefile.win installr INSTDIR=<EM>dir</EM></CODE>
+<LI><CODE>nmake /f Makefile.win installr INSTDIR=<EM>c:\ServerRoot</EM></CODE>
  (for release build)
-<LI><CODE>nmake /f Makefile.win installd INSTDIR=<EM>dir</EM></CODE>
+<LI><CODE>nmake /f Makefile.win installd INSTDIR=<EM>c:\ServerRoot</EM></CODE>
  (for debug build)
 </UL>

-The <EM>dir</EM> argument to INSTDIR gives the installation directory; it can
-be omitted if Apache is to be installed into <SAMP>\Apache</SAMP>.
+The <EM>c:\ServerRoot</EM> argument to INSTDIR gives the installation
directory (it can
+be omitted if Apache is to be installed into <SAMP>\Apache</SAMP>).

 <P>This will install the following:</P>

 <UL>
-  <LI><CODE><EM>dir</EM>\Apache.exe</CODE> - Apache executable
-  <LI><CODE><EM>dir</EM>\ApacheCore.dll</CODE> - Main Apache shared library
-  <LI><CODE><EM>dir</EM>\modules\ApacheModule*.dll</CODE> - Loadable Apache
+  <LI><CODE><EM>c:\ServerRoot</EM>\Apache.exe</CODE> - Apache executable
+  <LI><CODE><EM>c:\ServerRoot</EM>\ApacheCore.dll</CODE> - Main Apache shared
library
+  <LI><CODE><EM>c:\ServerRoot</EM>\modules\ApacheModule*.dll</CODE> - Loadable
Apache
       modules
-  <LI><CODE><EM>dir</EM>\bin\*.exe</CODE> - Administrator support executables
-  <LI><CODE><EM>dir</EM>\conf</CODE> - Empty configuration directory
-  <LI><CODE><EM>dir</EM>\logs</CODE> - Empty logging directory
+  <LI><CODE><EM>c:\ServerRoot</EM>\bin\*.exe</CODE> - Administrator support
executables
+  <LI><CODE><EM>c:\ServerRoot</EM>\conf</CODE> - Empty configuration directory
+  <LI><CODE><EM>c:\ServerRoot</EM>\logs</CODE> - Empty logging directory
 </UL>

 <P>If you do not have nmake, or wish to install in a different directory,
@@ -140,10 +146,29 @@
 <P>
 Before running the server you must fill out the conf directory.
 Copy the *.conf-dist-win from the distribution conf directory
-and rename *.conf.  Edit the @@ServerRoot@@ entries to your
-actual server root (for example "C:\apache").  Copy over
-the conf/magic and conf/mime.types files as well.
+and rename them to *.conf.  You will need to copy over the conf/magic
+and conf/mime.types files as well. In order to serve documents
+you will need to create a htdocs\index.html or just copy over the standard
Apache
+ones (This is a good idea as then you get the full Apache documentation on
line).
+If you have previously run Apache from the c:\ServerRoot directory then please
make
+sure you backup any files you wish to retain or only copy the files you want
replaced.
+The following commands will copy all the required files to your
+c:\ServerRoot directory (***over-writing any that were there***);<br><br>
+
+<UL>
+<LI><CODE>xcopy ..\conf\*.conf-dist-win c:\ServerRoot\conf\*.conf</CODE><br>
+<LI><CODE>xcopy ..\conf\magic c:\ServerRoot\conf\</CODE><br>
+<LI><CODE>xcopy ..\conf\mime.types c:\ServerRoot\conf\</CODE><br>
+<LI><CODE>xcopy ..\htdocs\*.* c:\ServerRoot\htdocs\ /E</CODE><br>
+</UL>
+(adjust these so c:\ServerRoot matches the INSTDIR used above)
+
+<P>
+Edit the @@ServerRoot@@ entries in c:\ServerRoot\conf\httpd.conf to your
+actual server root (for example "c:/ServerRoot" Note: you must use forward
+slashes in Apache configuration files).<br>

 <!--#include virtual="footer.html" -->
 </BODY>
 </HTML>
+



RE: [PATCH] RE: cvs commit: apache-1.3/src/os/win32 service.c service.h

Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
> From: Andrew Braund [mailto:abraund_news@mail.com]
> Sent: Tuesday, June 06, 2000 12:16 AM
> 
> 
> This is my first attempt at a patch so please be gentle! I thought I would
> start with some changes to win_compiling.html. The changes mainly cater for the
> novice user. I have just seen a new version (apache-1.3_20000606041200.tar.gz)
> so will download it and start testing the new service stuff on 95 and add
> something to the windows.html documentation.

Good changes (perhaps C:\ServerRoot, to be consistent though?  I can see a
truly novice user retaining the D:, while they have no D: drive :-)  

> I downloaded apache-1.3_20000605221200.tar.gz then compiled (command line
> style) following instructions in windows.html and win_compiling.html. This went
> very well, a new user would get a good first impression.

Good to hear it!
 
> Other Comments;
> Makefile.win is a Windows (only) make file so why can't it copy the
> conf\*.conf-dist-win, conf\mime.types, conf\magic and htdocs\*.* files to the
> ServerRoot directory? Would this be a good thing/worth doing?

Hmmm.  Interesting, although often one is building the tree in the manner
it is distributed, that is src is the folder within the ServerRoot, and
the INSTDIR=.. - but this gives me an even more interesting idea; if the
httpd.conf is not found, and httpd.conf-dist-win is present, autogenerate
a proper httpd.conf on startup?

> PS; Many thanks to Mr William Rowe for all his effort on the 
> Windows code, and sorry for complaining :(.

Complaining?  I don't remember your name as a complainer, at least not once
you start submitting patches for the fixes you want to see :-)  


[PATCH] RE: cvs commit: apache-1.3/src/os/win32 service.c service.h

Posted by Andrew Braund <ab...@mail.com>.
This is my first attempt at a patch so please be gentle! I thought I would
start with some changes to win_compiling.html. The changes mainly cater for the
novice user. I have just seen a new version (apache-1.3_20000606041200.tar.gz)
so will download it and start testing the new service stuff on 95 and add
something to the windows.html documentation.

I downloaded apache-1.3_20000605221200.tar.gz then compiled (command line
style) following instructions in windows.html and win_compiling.html. This went
very well, a new user would get a good first impression.

Other Comments;
Makefile.win is a Windows (only) make file so why can't it copy the
conf\*.conf-dist-win, conf\mime.types, conf\magic and htdocs\*.* files to the
ServerRoot directory? Would this be a good thing/worth doing?

PS; Many thanks to Mr William Rowe for all his effort on the Windows code, and
sorry for complaining :(.

> -----Original Message-----
> From: William A. Rowe, Jr. [mailto:wrowe@lnd.com]
> Sent: Tuesday, 6 June 2000 4:09
> To: new-httpd@apache.org
> Subject: RE: cvs commit: apache-1.3/src/os/win32 service.c service.h
>
>
> > From: wrowe@locus.apache.org [mailto:wrowe@locus.apache.org]
> > Sent: Monday, June 05, 2000 1:05 PM
> >
> >   Index: STATUS
> >   ===================================================================
> >   +    * Assure the windows.html reflects reality, today.
> >   +        - running the service as a user other than SYSTEM (NT/2000).
> >   +        - CONDITIONALLY - if someone posts revisions to the list for
> >   +          htdocs/manual/windows.html to properly document JJK's Win95
> >   +          services support as a -HIGHLY EXPERIMENTAL- patch,
> >   +          OtherBill will include that patch (with -k runservice rather
> >   +          than -s, not documented in the -h list of options, and with
> >   +          FreeConsole() -following- successful parsing of httpd.conf).
> >   +          Too many are complaining, -but- 3+ Win95 users must step up
> >   +          to test this new patch offered late Mon eve before we proceed.
>
> Ok, explanation...
>
> I've had several sideband comments about this side of JJK's patch.  It took
> considerable rework to get it to integrate well into 2.0, but I did start
> in my devel 1.3.x tree.  So it is already there.
>
> If those who want this patch applied will speak up to the list, and one will
> offer a patch to the windows.html docs to bring that up to this patch,
> and several will commit to testing the revised patch, I'll go for it.
>
> HOWEVER, it must be clearly marked -HIGHLY EXPERIMENTAL- (for this rev).
> If it works well, and we don't see the complaints, then we will remove
> that caviat for 2.0 :-)  We must warn them that if it works -at all- we
> can not attest to it's reliability or future support of that feature.
>
> My original thought - "This is a new feature"... didn't hold water.  If we
> are going to deploy in 2.0, why not get it tested in 1.3.13?  That affords
> us the best confidence in a clean 2.0 release.  Also, several complained
> that they were needing that feature now, not in several months or whenever
> 2.0 gets rolling into beta.  [beta 2.0 should be stronger than Win32 1.3!]
>


--- win_compiling.html	Thu May 11 13:09:18 2000
+++ updated_win_compiling.html	Tue Jun  6 12:28:38 2000
@@ -20,7 +20,7 @@
    See <A HREF="windows.html">Using Apache with Microsoft Windows</A>
    before you begin.</P>

-<P>Compiling Apache requires Microsoft Visual C++ 5.0 to be properly
+<P>Compiling Apache requires Microsoft Visual C++ 5.0 (or 6.0) to be properly
    installed. It is easiest to compile with the command-line tools
    (nmake, <EM>etc.</EM>..). Consult the VC++ manual to determine how
    to install them.  Be especially aware that the vcvars32.bat file
@@ -43,6 +43,12 @@
    information in the resulting files, making it easier to find bugs and
    track down problems.</P>

+<P>If you get an error such as "the name specified is not recognized..."
+ then you need to run vcvars32.bat first. Enter the following command;<br>
+  "D:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT"<br>
+ (you will need to adjust this so it matches where your VC was installed) then
+ try the nmake command again.</P>
+
 <P>Apache can also be compiled using VC++'s Visual Studio development
    environment.  To simplify this process, a Visual Studio workspace,
    Apache.dsw, is provided in the src folder.  This workspace exposes
@@ -95,28 +101,28 @@
    root directory. The default is the <CODE>\Apache</CODE>
    directory, on the current hard drive.</P>

-<P>To install the files into the <CODE>\Apache</CODE> directory
+<P>To install the files into the <CODE>c:\ApacheRoot</CODE> directory
    automatically, use one the following nmake commands (see above):</P>
 <UL>
-<LI><CODE>nmake /f Makefile.win installr INSTDIR=<EM>dir</EM></CODE>
+<LI><CODE>nmake /f Makefile.win installr INSTDIR=<EM>c:\ApacheRoot</EM></CODE>
  (for release build)
-<LI><CODE>nmake /f Makefile.win installd INSTDIR=<EM>dir</EM></CODE>
+<LI><CODE>nmake /f Makefile.win installd INSTDIR=<EM>c:\ApacheRoot</EM></CODE>
  (for debug build)
 </UL>

-The <EM>dir</EM> argument to INSTDIR gives the installation directory; it can
-be omitted if Apache is to be installed into <SAMP>\Apache</SAMP>.
+The <EM>c:\ApacheRoot</EM> argument to INSTDIR gives the installation
directory (it can
+be omitted if Apache is to be installed into <SAMP>\Apache</SAMP>).

 <P>This will install the following:</P>

 <UL>
-  <LI><CODE><EM>dir</EM>\Apache.exe</CODE> - Apache executable
-  <LI><CODE><EM>dir</EM>\ApacheCore.dll</CODE> - Main Apache shared library
-  <LI><CODE><EM>dir</EM>\modules\ApacheModule*.dll</CODE> - Loadable Apache
+  <LI><CODE><EM>c:\ApacheRoot</EM>\Apache.exe</CODE> - Apache executable
+  <LI><CODE><EM>c:\ApacheRoot</EM>\ApacheCore.dll</CODE> - Main Apache shared
library
+  <LI><CODE><EM>c:\ApacheRoot</EM>\modules\ApacheModule*.dll</CODE> - Loadable
Apache
       modules
-  <LI><CODE><EM>dir</EM>\bin\*.exe</CODE> - Administrator support executables
-  <LI><CODE><EM>dir</EM>\conf</CODE> - Empty configuration directory
-  <LI><CODE><EM>dir</EM>\logs</CODE> - Empty logging directory
+  <LI><CODE><EM>c:\ApacheRoot</EM>\bin\*.exe</CODE> - Administrator support
executables
+  <LI><CODE><EM>c:\ApacheRoot</EM>\conf</CODE> - Empty configuration directory
+  <LI><CODE><EM>c:\ApacheRoot</EM>\logs</CODE> - Empty logging directory
 </UL>

 <P>If you do not have nmake, or wish to install in a different directory,
@@ -140,10 +146,23 @@
 <P>
 Before running the server you must fill out the conf directory.
 Copy the *.conf-dist-win from the distribution conf directory
-and rename *.conf.  Edit the @@ServerRoot@@ entries to your
-actual server root (for example "C:\apache").  Copy over
-the conf/magic and conf/mime.types files as well.
+and rename them to *.conf.  You will need to copy over the
+conf/magic and conf/mime.types files as well. In order to serve documents
+you will need to create a htdocs\index.html or just copy over the standard
Apache
+ones (This is a good idea as then you get the full Apache documention on
line).<br>
+The following commands will do this;<br>
+xcopy c:\Apache\conf\*.conf-dist-win c:\ApacheRoot\conf\*.conf<br>
+xcopy c:\Apache\conf\magic c:\ApacheRoot\conf\<br>
+xcopy c:\Apache\conf\mime.types c:\ApacheRoot\conf\<br>
+xcopy c:\Apache\htdocs\*.* c:\ApacheRoot\htdocs\ /E<br>
+(adjust these so c:\ApacheRoot matches the INSTDIR used above)
+
+<P>
+Edit the @@ServerRoot@@ entries in c:\ApacheRoot\conf\httpd.conf to your
+actual server root (for example "c:/ApacheRoot" Note: you must use forward
+slashes in Apache configuration files).<br>

 <!--#include virtual="footer.html" -->
 </BODY>
 </HTML>
+