httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@lnd.com>
Subject RE: [Fwd: Got news about the 1.0.0 release ?]
Date Sat, 17 Jun 2000 06:13:25 GMT
> From: Daniel S. Reichenbach [mailto:dsr@opensa.org]
> Sent: Wednesday, June 07, 2000 12:37 AM
> 
> > > My scripts check the httpd.conf and offer patching it, depending
> > > on the previous contents, e.g. modules can be configured with
> > > an update.
> > 
> > It all sounds good... I just verified that nothing else was pulled
> > into the release dependencies but msvcrt.dll...
> > 
> > Do you think we could be in a position to use your new installer/
> > install scripts late this week or sometime next?  I'd like to see
> > us make a fast break, and we have a good number of Apache/Win32
> > testers on hand at this moment.  Unless someone raises their hand
> > to roll the old script (I don't have that specific version of
> > InstallSheild myself.)
>
> I would say, i could have all ready until friday/saturday. I have
> to finish some updates, which are needed for IS 2000 and then
> it should be ready to go.

Clarifications... I was not considering the MSI installer as vanilla
(now that I see which page you were pointing to :)  If I read it right,
it 'requires' an MS IE to run (?!?)

I was considering the most basic .inf/.cab solution available, if it
could be done.  Since you voulenteer, I'm being patient :)  Have 'nuf
other things to be working on anyway.

Let us know how your plate is freeing up to kick some stuff around,
and please don't feel that we -have- to use the existing installdll,
if there is a better way please don't get hung up on that.  It only
exists to set up the @@ServerRoot@@.  But I'd love to see where you
are thinking of taking this...

I'm getting some thoughts on 2.0 (dangerous things... those thoughts...)
that we could do some parsing of the httpd.conf and look for blatently
missing new directives from version to version, and prompt the user
if they wish to add the XXX directive.  If it's in the .conf but
commented out, we can safely ignore it.  But back to 1.3.13...

-------------

Ken has made two requests, on top of it.  One is to prompt the user
on day 1 for their hostname, I don't know if I like this or not.

The second request is to hold the console open on error.  There is only
one dirt simple stupid way to do this, and I'm leaning this way.

Right now our icons include:

"Apache Web Server Documentation" 
  -> "@@ServerRoot@@\htdocs\manual\index.html"

"Install Apache as a service"
  -> "@@ServerRoot@@\Apache.exe" -d "@@ServerRoot@@" -i

"Start Apache"
  -> "@@ServerRoot@@\Apache.exe" -d "@@ServerRoot@@" -s [should be -k start !]

"Stop Apache"
  -> "@@ServerRoot@@\Apache.exe" -d "@@ServerRoot@@" -k shutdown

"Uninstall Apache Service"
  -> "@@ServerRoot@@\Apache.exe" -d "@@ServerRoot@@" -u

All well and good... but one is led to believe that Start/Stop
Apache then start and stop a service... misleading.

Those should change to Start|Stop Apache in a Console Window

Uninstall Apache Service is equally misleading, since the average
user expect Apache to be uninstalled.

Better, perhaps;
"Install Apache to start at bootup"
"Remove Apache from list to start at bootup"

Ick... awful phrases, but that's the drift.  Then we offer the
typical "Uninstall the Apache Server" if the setup program supports
it, although we will have to query the SCM and delete all services
matching ["]@@ServerRoot@@\Apache.exe["]  Under Win98, that means
iterating the HKLM\Software\Windows\CurrentVersion\RunServices key,
find each value of ["]@@ServerRoot@@\Apache.exe["], walk that value
name back to the HKLM\System\Services\CurrentControlSet tree and
blast each such named key.  I'll write out that code if you give
me the installer interface semantics.

If we uninstall, of course, we must never blast things like httpd.conf
and their changes to the htdocs folder (we could prompt if they want
to delete the logs and proxy folders.)

And I'd like to see a new

"Restart Apache"  [a new option :]
  -> "@@ServerRoot@@\Apache.exe" -d "@@ServerRoot@@" -k restart

and

"Edit Apache Server Configuration"
  -> "Notepad.exe "@@ServerRoot@@"\conf\httpd.conf"

"View Apache Server Error Log"
  -> "Notepad.exe "@@ServerRoot@@"\logs\error.log"

"View Apache Server Access Log"
  -> "Notepad.exe "@@ServerRoot@@"\logs\access.log"

Notepad is friendly, you can open the already open log file
while the server is running (at least on NT 4... I'll check
in with Win95.)  The QuickViewer will -not-, nor will WordPad
(which sucks, since NotePad defers large log files to WordPad!)
Damn... might as well find us a friggin text file viewer that
drops the user on the last line of any already open file.
command /k more <error.log would work, I suppose.  I give up,
someone else offer an idea here :-|

Plus the docs are broken, so I'd also like to see instead:

"Apache Web Server Documentation (on the Web)"
  -> "http://www.apache.org/docs/index.html"

"Apache Web Server Documentation (on this Server)"
  -> "http://127.0.0.1/manual/index.html"

(File based docs are pretty cruddy, no wonder Win32 folks never see
the FAQ, there is no faq if you go for the raw file :-|

-------------

That's the gist.  But the bigger issue, Ken's request to hold the
console open... here's my thought:

The batch file RunApache.bat would contain the following:

@echo off
Rem - RunApache.bat:  Apache httpd Server Batch Script
Rem -
Rem - You don't need this, but it keeps your console window open
Rem - if you encounter a configuration error!
Rem - 
Rem - You must invoke this batch file with %comspec% /k RunApache args
Rem - so the command shell 'k'eeps running when the batch file exits.
Rem -
@@ServerRootDriveLetter@@:
cd @@ServerRoot@@
echo Starting Apache with the command: 
echo.
echo     Apache %*
echo.
Apache %*
if exist logs/httpd.pid goto baddeath
if errorlevel 1 goto holdopen
exit
:baddeath
echo.
echo Warning: Apache did -not- shut down gracefully.
:holdopen
echo.
echo Please review any messages above for errors, or check your error log
echo right now with this command:   type logs\error.log

Now set up all the above icons to run the bat file instead of
apache.exe directly - and be sure to use Apache.exe as the 'icon file'.
We should be rocking... anyone annoyed can undo or kill the icons,
but better yet, most of us who would get annoyed runs a command window
anyway and -never- look at the icons (no wonder they are neglected :)

The syntax to launch the batch-file version is:

%comspec% /k ""@@ServerRoot@@\RunApache.bat" otherargs"

Turns out, I believe, the whole command must be quoted to quote the args.

And that, then, should do it!

Comments anyone?

Bill

Mime
View raw message