jim         99/06/29 08:13:14

  Modified:    htdocs/manual invoking.html
               src      CHANGES
               src/include http_conf_globals.h
               src/main http_core.c http_main.c
  Log:
  Add a new command-line option -T that's the same as -t, but it does
  not do DirectoryRoot checking. This assumes:
  
     1. command-line options are prefered over Config directives
     2. we want to maintain current behavior while making
        life easier for mass vhosting
     3. everybody's happy
  
  I leave the decision to whether apachectl should use -t or -T
  to others.
  
  Revision  Changes    Path
  1.26      +11 -1     apache-1.3/htdocs/manual/invoking.html
  
  Index: invoking.html
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/htdocs/manual/invoking.html,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- invoking.html     1999/02/05 09:22:42     1.25
  +++ invoking.html     1999/06/29 15:13:07     1.26
  @@ -117,7 +117,17 @@
   <DD>Test the configuration file syntax (<EM>i.e.</EM>, read all 
configuration files
   and interpret them) but do not start the server. If the configuration 
contains
   errors, display an error message and exit with a non-zero exit status,
  -otherwise display "Syntax OK" and terminate with a zero exit status.
  +otherwise display "Syntax OK" and terminate with a zero exit status. This
  +command checks to see if all DocumentRoot entries exist and are directories.
  +For sites with many vhosts, this is expensive; consider the <CODE>-T</CODE>
  +command instead.
  +
  +<DT><CODE>-T</CODE>
  +<DD>Test the configuration file syntax (<EM>i.e.</EM>, read all 
configuration files
  +and interpret them) but do not start the server. If the configuration 
contains
  +errors, display an error message and exit with a non-zero exit status,
  +otherwise display "Syntax OK" and terminate with a zero exit status. This
  +command does not perform any checking of the DocumentRoot entries.
   
   <DT><CODE>-k</CODE> <EM>option</EM>
   <DD>Windows only: signal Apache to restart or shutdown. <EM>option</EM> 
  
  
  
  1.1390    +5 -2      apache-1.3/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v
  retrieving revision 1.1389
  retrieving revision 1.1390
  diff -u -r1.1389 -r1.1390
  --- CHANGES   1999/06/29 14:27:39     1.1389
  +++ CHANGES   1999/06/29 15:13:08     1.1390
  @@ -22,13 +22,16 @@
     *) Fix apxs build issues on AIX 
        [Rasmus Lerdorf <[EMAIL PROTECTED]>]
   
  -  *) STARTUP BEHAVIOR CHANGE: Under previous versions, when Apache
  +  *) DocumentRoot Checking: Under previous versions, when Apache
        first started up, it used to do a stat of each DocumentRoot to
        see if it existed and was a directory. If not, then an error
        message was printed. THIS HAS BEEN DISABLED. If DocumentRoot
        does not exist, you will get error messages in error_log. If
        the '-t' command line option is used (to check the configuration)
  -     the check of DocumentRoot IS performed.  [Jim Jagielski]
  +     the check of DocumentRoot IS performed. An additional command
  +     line option, '-T', has been added if you want to avoid the
  +     DocumentRoot check even when checking the configuration.
  +     [Jim Jagielski]
   
     *) Win32: The query switch "apache -S" didn't exit after showing the
        vhost settings. That was inconsistent with the other query functions.
  
  
  
  1.39      +1 -0      apache-1.3/src/include/http_conf_globals.h
  
  Index: http_conf_globals.h
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/include/http_conf_globals.h,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- http_conf_globals.h       1999/06/24 16:38:41     1.38
  +++ http_conf_globals.h       1999/06/29 15:13:11     1.39
  @@ -68,6 +68,7 @@
   
   extern int ap_standalone;
   extern int ap_configtestonly;
  +extern int ap_docrootcheck;
   extern uid_t ap_user_id;
   extern char *ap_user_name;
   extern gid_t ap_group_id;
  
  
  
  1.269     +1 -1      apache-1.3/src/main/http_core.c
  
  Index: http_core.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/main/http_core.c,v
  retrieving revision 1.268
  retrieving revision 1.269
  diff -u -r1.268 -r1.269
  --- http_core.c       1999/06/28 22:38:25     1.268
  +++ http_core.c       1999/06/29 15:13:12     1.269
  @@ -1047,7 +1047,7 @@
       }
   
       arg = ap_os_canonical_filename(cmd->pool, arg);
  -    if (ap_configtestonly && !ap_is_directory(arg)) {
  +    if (ap_configtestonly && ap_docrootcheck && !ap_is_directory(arg)) {
        if (cmd->server->is_virtual) {
            fprintf(stderr, "Warning: DocumentRoot [%s] does not exist\n",
                    arg);
  
  
  
  1.452     +11 -0     apache-1.3/src/main/http_main.c
  
  Index: http_main.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v
  retrieving revision 1.451
  retrieving revision 1.452
  diff -u -r1.451 -r1.452
  --- http_main.c       1999/06/29 14:27:42     1.451
  +++ http_main.c       1999/06/29 15:13:12     1.452
  @@ -231,6 +231,7 @@
   
   int ap_standalone=0;
   int ap_configtestonly=0;
  +int ap_docrootcheck=1;
   uid_t ap_user_id=0;
   char *ap_user_name=NULL;
   gid_t ap_group_id=0;
  @@ -4747,7 +4748,12 @@
            break;
        case 't':
            ap_configtestonly = 1;
  +         ap_docrootcheck = 1;
            break;
  +     case 'T':
  +         ap_configtestonly = 1;
  +         ap_docrootcheck = 0;
  +         break;
        case 'h':
            usage(argv[0]);
        case '?':
  @@ -6255,6 +6261,11 @@
            break;
        case 't':
            ap_configtestonly = 1;
  +         ap_docrootcheck = 1;
  +         break;
  +     case 'T':
  +         ap_configtestonly = 1;
  +         ap_docrootcheck = 0;
            break;
        case 'h':
            usage(ap_server_argv0);
  
  
  

Reply via email to