[cgiwrap-users] Re: RE: Help! CGIWrap problem.
Brought to you by:
nneul
From: Nathan N. <nn...@um...> - 2000-09-14 20:08:54
|
From config.h: /* * httpd user check */ #define CONF_CHECK_HTTPD_USER 1 #define CONF_HTTPD_USER "http" That says you configured cgiwrap to have web server userid 'http', not 'nobody'. -- Nathan On Thu, Sep 14, 2000 at 01:20:05PM -0600, Jing Chen wrote: > Here are the files, hope they will help. > > On Thu, 14 Sep 2000 13:01:46 -0500 "Neulinger, Nathan R." > <nn...@um...> wrote: > > > -----Original Message----- > > > From: Jing Chen [mailto:Jin...@ur...] > > > Sent: Thursday, September 14, 2000 12:58 PM > > > To: Nathan Neulinger > > > Subject: Re: Help! CGIWrap problem. > > > > > > > > > Thanks for your good points. > > > I've checked the config file and passwd file, seems not > > > wrong with them. BTW, if cgiwrap running as nobody, how can > > > i verify wether it is running correct or not? > > > > > > The problem is still there. So I narrow down to the apache > > > server configuration issues. Here is what in your message, > > > "You haven't set up a cgi directory. You have to install > > > cgiwrap in a ScriptAlias'ed cgi-bin directory." And here is > > > what I've done, > > > > > > 1. in httpd.conf: > > > ScriptAlias /cgi-bin/ "/server/apache/cgi-bin/" > > > > That's fine. I don't think you need the quotes though. > > > > > <Directory "/server/*/public_html/cgi-bin"> > > > Options FollowSymLinks MultiViews ExecCGI > > > AddHandler cgi-script .cgi .pl > > > AllowOverride Options > > > Order allow,deny > > > Allow from all > > > </Directory> > > > > You don't want to do that. You should not have execcgi permission enabled > > for anything else on the server other than the central cgi-bin directory. > > > > > > > > 2. when config cgiwrap, I use: > > > with-install-dir=/server/apache/cgi-bin > > > > > > Would you give me some ideas? > > > > Yes, follow the instructions I gave you in the last email and send me the > > information I requested. > > > > -- Nathan > > > > > On Wed, 13 Sep 2000 17:55:39 -0500 Nathan Neulinger > > > <nn...@um...> wrote: > > > > Jing Chen wrote: > > > > > > > > > > Hi, > > > > > > > > > > I have apache web server 3.12 running on IRIX 6.5, > > also > > > CGIWRAP 3.6.4. Unfortunately, I've got stalled > > for several > > > weeks since I want anyone on the system > > can run perl > > > programs by themselves with CGIWRAP. > > Here's my questions: > > > > > > > > 1. I configured CGIWRAP "with-httpd-user" with > > nobody, > > same > as the user of web server. But the > > output of > > "cgiwrapd" is > like this: > > > > ... > Should I configure it with a different user? > > > > > > That sure looks to me like the server is not running as > > > > nobody. You need to check and make sure that is who > > it's > > running as. Look for the 'User' line in the > > config. > > > > > > If that it truly correct, send me: > > > > > > the output of configure, config.h, your httpd.conf > > file, > > and a 'ps -ef' output when the web server is > > running (an > > output that includes the userid). > > > > > > Also, you may want to check to make sure that the > > uid of > > nobody in the password file is not duplicated. > > i.e. > > something like: > > > > > > nofiles::32767::::: > > > > nobody::32767::::: > > > > > > That would cause the above problem, since when it goes > > to > > look up by uid, it would return nofiles instead. > > > > > > > 2. When invoke the command like > > > > > "http://server/cgi-bin/cgiwrap/user/perl.pl", it > > tells > > me > "Forbidden You don't have permission to > > access > > > /cgi-bin/cgiwrap/user/perl.pl on this server." > > > I DO > > give 755 permission to all the needed files, as > > well > as > > the cgi-bin directory. What's the problem? > > > > > > That is an apache configuration issue. You haven't > > set up a > > cgi directory. You have to install cgiwrap in > > a > > ScriptAlias'ed cgi-bin directory. > > > > > > > > > > > > 3. One more dumy question, after I install CGIWRAP, > > should > > > I make some further steps before I restart the > > httpd? Like > > > starting cgiwrapd? > > > > > > Hope I express to you all that is confusing me, and > > hope > > > you can understand it too. > > > > > > Thanks, > Jing CHEN > > > > > > -- > > > > > > > > > > ------------------------------------------------------------ > > > > Nathan Neulinger EMail: > > nn...@um... > > University of Missouri - Rolla > > Phone: (573) 341-4841 > > CIS - Systems Programming > > Fax: (573) 341-4216 > > > > > > > /* config.h. Generated automatically by configure. */ > /* config.h.in. Generated automatically from configure.in by autoheader. */ > > /* Define if you have the ANSI C header files. */ > #define STDC_HEADERS 1 > > /* > * httpd user check > */ > #define CONF_CHECK_HTTPD_USER 1 > #define CONF_HTTPD_USER "http" > > /* > * Informational definitions > */ > /* #undef CONF_LOCAL_SITE_URL */ > /* #undef CONF_LOCAL_DOC_URL */ > /* #undef CONF_LOCAL_INFO_ENABLED */ > /* #undef CONF_LOCAL_CONTACT_NAME */ > /* #undef CONF_LOCAL_CONTACT_EMAIL */ > /* #undef CONF_LOCAL_CONTACT_PHONE */ > /* #undef CONF_LOCAL_CONTACT_URL */ > > /* > * Environment variable setting > */ > /* #undef CONF_SETENV_ANY */ > /* #undef CONF_SETENV_PATH */ > /* #undef CONF_SETENV_TZ */ > > /* > * Script checks > */ > #define CONF_STRICT_NAMES 1 > #define CONF_CHECK_SCRUID 1 > #define CONF_CHECK_SCRGID 1 > #define CONF_CHECK_SCRSUID 1 > #define CONF_CHECK_SCRSGID 1 > #define CONF_CHECK_SCRGWRITE 1 > #define CONF_CHECK_SCROWRITE 1 > #define CONF_CHECK_SYMLINK 1 > > /* > * Logging options > */ > /* #undef CONF_LOG_USEFILE */ > /* #undef CONF_LOG_USESYSLOG */ > /* #undef CONF_LOG_LOGFILE */ > /* #undef CONF_LOG_LABEL */ > > /* > * Function availability > */ > #define HAS_SIGSET 1 > #define HAS_INITGROUPS 1 > #define HAS_SETGROUPS 1 > #define HAS_SETGID 1 > #define HAS_SETUID 1 > #define HAS_SETEGID 1 > #define HAS_SETEUID 1 > #define HAS_SETRGID 1 > #define HAS_SETRUID 1 > #define HAS_SETREGID 1 > #define HAS_SETREUID 1 > /* #undef HAS_SETRESGID */ > /* #undef HAS_SETRESUID */ > #define HAS_PERROR 1 > #define HAS_STRDUP 1 > #define HAS_SYSLOG 1 > #define HAS_SETRLIMIT 1 > #define HAS_STRERROR 1 > #define HAS_PUTENV 1 > #define HAS_WAIT3 1 > > /* > * Various options > */ > #define CONF_MINIMUM_UID 10 > #define CONF_FIXED_PATHTRANS 1 > #define CONF_REDIR_STDERR 1 > #define CONF_SUBDIRS 1 > /* #undef CONF_USERDIRFILE */ > #define CONF_INITGROUPS 1 > #define CONF_SETGROUPS 1 > /* #undef CONF_ALLOWFILE */ > /* #undef CONF_DENYFILE */ > /* #undef CONF_CHECKHOST */ > /* #undef CONF_CHECKSHELL */ > /* #undef CONF_AFS_SETPAG */ > #define CONF_CGIDIR "public_html/cgi-bin" > > /* > * RLimit Options > */ > /* #undef CONF_USE_RLIMIT_ANY */ > /* #undef CONF_USE_RLIMIT_AS */ > /* #undef CONF_USE_RLIMIT_CPU */ > /* #undef CONF_USE_RLIMIT_VMEM */ > /* #undef CONF_USE_RLIMIT_FSIZE */ > /* #undef CONF_USE_RLIMIT_DATA */ > /* #undef CONF_USE_RLIMIT_STACK */ > /* #undef CONF_USE_RLIMIT_CORE */ > /* #undef CONF_USE_RLIMIT_RSS */ > /* #undef CONF_USE_RLIMIT_NPROC */ > /* #undef CONF_USE_RLIMIT_NOFILE */ > /* #undef CONF_USE_RLIMIT_MEMLOCK */ > > /* > * Support for reporting rusage/return status > */ > /* #undef CONF_REPORT_RUSAGE */ > > /* Define if you have the <ctype.h> header file. */ > #define HAVE_CTYPE_H 1 > > /* Define if you have the <errno.h> header file. */ > #define HAVE_ERRNO_H 1 > > /* Define if you have the <fcntl.h> header file. */ > #define HAVE_FCNTL_H 1 > > /* Define if you have the <grp.h> header file. */ > #define HAVE_GRP_H 1 > > /* Define if you have the <limits.h> header file. */ > #define HAVE_LIMITS_H 1 > > /* Define if you have the <pwd.h> header file. */ > #define HAVE_PWD_H 1 > > /* Define if you have the <signal.h> header file. */ > #define HAVE_SIGNAL_H 1 > > /* Define if you have the <stdlib.h> header file. */ > #define HAVE_STDLIB_H 1 > > /* Define if you have the <string.h> header file. */ > #define HAVE_STRING_H 1 > > /* Define if you have the <strings.h> header file. */ > #define HAVE_STRINGS_H 1 > > /* Define if you have the <sys/resource.h> header file. */ > #define HAVE_SYS_RESOURCE_H 1 > > /* Define if you have the <sys/stat.h> header file. */ > #define HAVE_SYS_STAT_H 1 > > /* Define if you have the <sys/time.h> header file. */ > #define HAVE_SYS_TIME_H 1 > > /* Define if you have the <sys/types.h> header file. */ > #define HAVE_SYS_TYPES_H 1 > > /* Define if you have the <sys/wait.h> header file. */ > #define HAVE_SYS_WAIT_H 1 > > /* Define if you have the <syslog.h> header file. */ > #define HAVE_SYSLOG_H 1 > > /* Define if you have the <unistd.h> header file. */ > #define HAVE_UNISTD_H 1 > loading cache ./config.cache > checking host system type... mips-sgi-irix6.5 > checking target system type... mips-sgi-irix6.5 > checking build system type... mips-sgi-irix6.5 > checking for gcc... (cached) gcc > checking whether the C compiler (gcc ) works... yes > checking whether the C compiler (gcc ) is a cross-compiler... no > checking whether we are using GNU C... (cached) yes > checking whether gcc accepts -g... (cached) yes > checking whether make sets ${MAKE}... (cached) yes > checking for perl... (cached) /usr/sbin/perl > checking for sigset... (cached) yes > checking for initgroups... (cached) yes > checking for setgroups... (cached) yes > checking for setgid... (cached) yes > checking for setuid... (cached) yes > checking for setegid... (cached) yes > checking for seteuid... (cached) yes > checking for setrgid... (cached) yes > checking for setruid... (cached) yes > checking for setregid... (cached) yes > checking for setreuid... (cached) yes > checking for setresgid... (cached) no > checking for setresuid... (cached) no > checking for perror... (cached) yes > checking for strerror... (cached) yes > checking for strdup... (cached) yes > checking for syslog... (cached) yes > checking for setrlimit... (cached) yes > checking for putenv... (cached) yes > checking for wait3... (cached) yes > checking for local contact name... disabled > checking for local contact email... disabled > checking for local contact phone... disabled > checking for local contact url... disabled > checking for local site url... disabled > checking for local cgiwrap docs... disabled > checking for with-wall... disabled > checking for installation group... root > checking for installation directory... not found > checking for path to cgi scripts... public_html/cgi-bin > checking for httpd-user... server running as http > checking for check-httpd-user... enabled, be sure to restrict permissions > checking for report-rusage... disabled, rusage and return code will not be logged > checking for strict-names... enabled, script name must be all alphanumeric > checking for check-owner... enabled, owner of script must match > checking for check-group... enabled, group of script must match > checking for check-setuid... enabled, script cannot be setuid > checking for check-setgid... enabled, script cannot be setgid > checking for check-group-writable... enabled, script cannot be group writable > checking for check-world-writable... enabled, script cannot be world writable > checking for check-symlink... enabled, script cannot be a symlink > checking for minimum uid... 10 > checking for logging-syslog... disabled > checking for logging-file... disabled > checking for script-subdirs... enabled, scripts allowed in subdirectories > checking for redirect-stderr... enabled, stderr output will go to stdout > checking for initgroups... enabled, aux groups will be cleared > checking for setgroups... enabled, aux groups will be set > checking for user directory rewrite... disabled, no rewrite file will be used > checking for fixed-path-translated... enabled > checking for setenv-path... disabled > checking for setenv-tz... disabled > checking for limit rlimit-cpu... none > checking for limit rlimit-vmem... none > checking for limit rlimit-as... none > checking for limit rlimit-fsize... none > checking for limit rlimit-data... none > checking for limit rlimit-stack... none > checking for limit rlimit-core... none > checking for limit rlimit-rss... none > checking for limit rlimit-nproc... none > checking for limit rlimit-nofile... none > checking for limit rlimit-memlock... none > checking for allow-file... disabled > checking for deny-file... disabled > checking for host checking... disabled > checking for shell checking... disabled > checking for afs setpag() support... disabled > checking how to run the C preprocessor... (cached) gcc -E > checking for ANSI C header files... (cached) yes > checking for limits.h... (cached) yes > checking for stdlib.h... (cached) yes > checking for pwd.h... (cached) yes > checking for string.h... (cached) yes > checking for strings.h... (cached) yes > checking for sys/resource.h... (cached) yes > checking for sys/types.h... (cached) yes > checking for sys/time.h... (cached) yes > checking for unistd.h... (cached) yes > checking for syslog.h... (cached) yes > checking for fcntl.h... (cached) yes > checking for sys/stat.h... (cached) yes > checking for signal.h... (cached) yes > checking for ctype.h... (cached) yes > checking for grp.h... (cached) yes > checking for errno.h... (cached) yes > checking for sys/wait.h... (cached) yes > creating ./config.status > creating Makefile > creating unsup/loganalyze.pl > creating config.h > config.h is unchanged > ## > ## httpd.conf -- Apache HTTP server configuration file > ## > > # > # Based upon the NCSA server configuration files originally by Rob McCool. > # > # This is the main Apache server configuration file. It contains the > # configuration directives that give the server its instructions. > # See <URL:http://www.apache.org/docs/> for detailed information about > # the directives. > # > # Do NOT simply read the instructions in here without understanding > # what they do. They're here only as hints or reminders. If you are unsure > # consult the online docs. You have been warned. > # > # After this file is processed, the server will look for and process > # /home/grendel/jing/apache/conf/srm.conf and then /home/grendel/jing/apache/conf/access.conf > # unless you have overridden these with ResourceConfig and/or > # AccessConfig directives here. > # > # The configuration directives are grouped into three basic sections: > # 1. Directives that control the operation of the Apache server process as a > # whole (the 'global environment'). > # 2. Directives that define the parameters of the 'main' or 'default' server, > # which responds to requests that aren't handled by a virtual host. > # These directives also provide default values for the settings > # of all virtual hosts. > # 3. Settings for virtual hosts, which allow Web requests to be sent to > # different IP addresses or hostnames and have them handled by the > # same Apache server process. > # > # Configuration and logfile names: If the filenames you specify for many > # of the server's control files begin with "/" (or "drive:/" for Win32), the > # server will use that explicit path. If the filenames do *not* begin > # with "/", the value of ServerRoot is prepended -- so "logs/foo.log" > # with ServerRoot set to "/usr/local/apache" will be interpreted by the > # server as "/usr/local/apache/logs/foo.log". > # > > ### Section 1: Global Environment > # > # The directives in this section affect the overall operation of Apache, > # such as the number of concurrent requests it can handle or where it > # can find its configuration files. > # > > # > # ServerType is either inetd, or standalone. Inetd mode is only supported on > # Unix platforms. > # > ServerType standalone > > # > # ServerRoot: The top of the directory tree under which the server's > # configuration, error, and log files are kept. > # > # NOTE! If you intend to place this on an NFS (or otherwise network) > # mounted filesystem then please read the LockFile documentation > # (available at <URL:http://www.apache.org/docs/mod/core.html#lockfile>); > # you will save yourself a lot of trouble. > # > # Do NOT add a slash at the end of the directory path. > # > ServerRoot "/home/grendel/jing/apache" > > # > # The LockFile directive sets the path to the lockfile used when Apache > # is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or > # USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at > # its default value. The main reason for changing it is if the logs > # directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL > # DISK. The PID of the main server process is automatically appended to > # the filename. > # > #LockFile /home/grendel/jing/apache/logs/httpd.lock > > # > # PidFile: The file in which the server should record its process > # identification number when it starts. > # > PidFile /home/grendel/jing/apache/logs/httpd.pid > > # > # ScoreBoardFile: File used to store internal server process information. > # Not all architectures require this. But if yours does (you'll know because > # this file will be created when you run Apache) then you *must* ensure that > # no two invocations of Apache share the same scoreboard file. > # > ScoreBoardFile /home/grendel/jing/apache/logs/httpd.scoreboard > > # > # In the standard configuration, the server will process this file, > # srm.conf, and access.conf in that order. The latter two files are > # now distributed empty, as it is recommended that all directives > # be kept in a single file for simplicity. The commented-out values > # below are the built-in defaults. You can have the server ignore > # these files altogether by using "/dev/null" (for Unix) or > # "nul" (for Win32) for the arguments to the directives. > # > #ResourceConfig conf/srm.conf > #AccessConfig conf/access.conf > > # > # Timeout: The number of seconds before receives and sends time out. > # > Timeout 300 > > # > # KeepAlive: Whether or not to allow persistent connections (more than > # one request per connection). Set to "Off" to deactivate. > # > KeepAlive On > > # > # MaxKeepAliveRequests: The maximum number of requests to allow > # during a persistent connection. Set to 0 to allow an unlimited amount. > # We recommend you leave this number high, for maximum performance. > # > MaxKeepAliveRequests 100 > > # > # KeepAliveTimeout: Number of seconds to wait for the next request from the > # same client on the same connection. > # > KeepAliveTimeout 15 > > # > # Server-pool size regulation. Rather than making you guess how many > # server processes you need, Apache dynamically adapts to the load it > # sees --- that is, it tries to maintain enough server processes to > # handle the current load, plus a few spare servers to handle transient > # load spikes (e.g., multiple simultaneous requests from a single > # Netscape browser). > # > # It does this by periodically checking how many servers are waiting > # for a request. If there are fewer than MinSpareServers, it creates > # a new spare. If there are more than MaxSpareServers, some of the > # spares die off. The default values are probably OK for most sites. > # > MinSpareServers 5 > MaxSpareServers 10 > > # > # Number of servers to start initially --- should be a reasonable ballpark > # figure. > # > StartServers 5 > > # > # Limit on total number of servers running, i.e., limit on the number > # of clients who can simultaneously connect --- if this limit is ever > # reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW. > # It is intended mainly as a brake to keep a runaway server from taking > # the system with it as it spirals down... > # > MaxClients 150 > > # > # MaxRequestsPerChild: the number of requests each child process is > # allowed to process before the child dies. The child will exit so > # as to avoid problems after prolonged use when Apache (and maybe the > # libraries it uses) leak memory or other resources. On most systems, this > # isn't really needed, but a few (such as Solaris) do have notable leaks > # in the libraries. For these platforms, set to something like 10000 > # or so; a setting of 0 means unlimited. > # > # NOTE: This value does not include keepalive requests after the initial > # request per connection. For example, if a child process handles > # an initial request and 10 subsequent "keptalive" requests, it > # would only count as 1 request towards this limit. > # > MaxRequestsPerChild 0 > > # > # Listen: Allows you to bind Apache to specific IP addresses and/or > # ports, in addition to the default. See also the <VirtualHost> > # directive. > # > #Listen 3000 > #Listen 12.34.56.78:80 > > # > # BindAddress: You can support virtual hosts with this option. This directive > # is used to tell the server which IP address to listen to. It can either > # contain "*", an IP address, or a fully qualified Internet domain name. > # See also the <VirtualHost> and Listen directives. > # > #BindAddress * > > # > # Dynamic Shared Object (DSO) Support > # > # To be able to use the functionality of a module which was built as a DSO you > # have to place corresponding `LoadModule' lines at this location so the > # directives contained in it are actually available _before_ they are used. > # Please read the file README.DSO in the Apache 1.3 distribution for more > # details about the DSO mechanism and run `httpd -l' for the list of already > # built-in (statically linked and thus always available) modules in your httpd > # binary. > # > # Note: The order is which modules are loaded is important. Don't change > # the order below without expert advice. > # > # Example: > # LoadModule foo_module libexec/mod_foo.so > LoadModule vhost_alias_module libexec/mod_vhost_alias.so > LoadModule env_module libexec/mod_env.so > LoadModule config_log_module libexec/mod_log_config.so > LoadModule mime_magic_module libexec/mod_mime_magic.so > LoadModule mime_module libexec/mod_mime.so > LoadModule negotiation_module libexec/mod_negotiation.so > LoadModule status_module libexec/mod_status.so > LoadModule info_module libexec/mod_info.so > LoadModule includes_module libexec/mod_include.so > LoadModule autoindex_module libexec/mod_autoindex.so > LoadModule dir_module libexec/mod_dir.so > LoadModule cgi_module libexec/mod_cgi.so > LoadModule asis_module libexec/mod_asis.so > LoadModule imap_module libexec/mod_imap.so > LoadModule action_module libexec/mod_actions.so > LoadModule speling_module libexec/mod_speling.so > LoadModule userdir_module libexec/mod_userdir.so > LoadModule alias_module libexec/mod_alias.so > LoadModule rewrite_module libexec/mod_rewrite.so > LoadModule access_module libexec/mod_access.so > LoadModule auth_module libexec/mod_auth.so > LoadModule anon_auth_module libexec/mod_auth_anon.so > LoadModule dbm_auth_module libexec/mod_auth_dbm.so > LoadModule digest_module libexec/mod_digest.so > LoadModule proxy_module libexec/libproxy.so > LoadModule cern_meta_module libexec/mod_cern_meta.so > LoadModule expires_module libexec/mod_expires.so > LoadModule headers_module libexec/mod_headers.so > LoadModule usertrack_module libexec/mod_usertrack.so > LoadModule unique_id_module libexec/mod_unique_id.so > LoadModule setenvif_module libexec/mod_setenvif.so > > # Reconstruction of the complete module list from all available modules > # (static and shared ones) to achieve correct module execution order. > # [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO] > ClearModuleList > AddModule mod_vhost_alias.c > AddModule mod_env.c > AddModule mod_log_config.c > AddModule mod_mime_magic.c > AddModule mod_mime.c > AddModule mod_negotiation.c > AddModule mod_status.c > AddModule mod_info.c > AddModule mod_include.c > AddModule mod_autoindex.c > AddModule mod_dir.c > AddModule mod_cgi.c > AddModule mod_asis.c > AddModule mod_imap.c > AddModule mod_actions.c > AddModule mod_speling.c > AddModule mod_userdir.c > AddModule mod_alias.c > AddModule mod_rewrite.c > AddModule mod_access.c > AddModule mod_auth.c > AddModule mod_auth_anon.c > AddModule mod_auth_dbm.c > AddModule mod_digest.c > AddModule mod_proxy.c > AddModule mod_cern_meta.c > AddModule mod_expires.c > AddModule mod_headers.c > AddModule mod_usertrack.c > AddModule mod_unique_id.c > AddModule mod_so.c > AddModule mod_setenvif.c > > # > # ExtendedStatus controls whether Apache will generate "full" status > # information (ExtendedStatus On) or just basic information (ExtendedStatus > # Off) when the "server-status" handler is called. The default is Off. > # > #ExtendedStatus On > > ### Section 2: 'Main' server configuration > # > # The directives in this section set up the values used by the 'main' > # server, which responds to any requests that aren't handled by a > # <VirtualHost> definition. These values also provide defaults for > # any <VirtualHost> containers you may define later in the file. > # > # All of these directives may appear inside <VirtualHost> containers, > # in which case these default settings will be overridden for the > # virtual host being defined. > # > > # > # If your ServerType directive (set earlier in the 'Global Environment' > # section) is set to "inetd", the next few directives don't have any > # effect since their settings are defined by the inetd configuration. > # Skip ahead to the ServerAdmin directive. > # > > # > # Port: The port to which the standalone server listens. For > # ports < 1023, you will need httpd to be run as root initially. > # > Port 80 > > # > # If you wish httpd to run as a different user or group, you must run > # httpd as root initially and it will switch. > # > # User/Group: The name (or #number) of the user/group to run httpd as. > # . On SCO (ODT 3) use "User nouser" and "Group nogroup". > # . On HPUX you may not be able to use shared memory as nobody, and the > # suggested workaround is to create a user www and use that user. > # NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET) > # when the value of (unsigned)Group is above 60000; > # don't use Group nobody on these systems! > # > User nobody > Group nobody > > # > # ServerAdmin: Your address, where problems with the server should be > # e-mailed. This address appears on some server-generated pages, such > # as error documents. > # > ServerAdmin ro...@gr... > > # > # ServerName allows you to set a host name which is sent back to clients for > # your server if it's different than the one the program would get (i.e., use > # "www" instead of the host's real name). > # > # Note: You cannot just invent host names and hope they work. The name you > # define here must be a valid DNS name for your host. If you don't understand > # this, ask your network administrator. > # If your host doesn't have a registered DNS name, enter its IP address here. > # You will have to access it by its address (e.g., http://123.45.67.89/) > # anyway, and this will make redirections work in a sensible way. > # > #ServerName grendel.cs.uregina.ca > > # > # DocumentRoot: The directory out of which you will serve your > # documents. By default, all requests are taken from this directory, but > # symbolic links and aliases may be used to point to other locations. > # > DocumentRoot "/home/grendel/jing/apache/htdocs" > > # > # Each directory to which Apache has access, can be configured with respect > # to which services and features are allowed and/or disabled in that > # directory (and its subdirectories). > # > # First, we configure the "default" to be a very restrictive set of > # permissions. > # > <Directory /> > Options FollowSymLinks > AllowOverride All > </Directory> > > # > # Note that from this point forward you must specifically allow > # particular features to be enabled - so if something's not working as > # you might expect, make sure that you have specifically enabled it > # below. > # > > # > # This should be changed to whatever you set DocumentRoot to. > # > #<Directory "/home/grendel/jing/apache/htdocs"> > #<Directory "/home/grendel/*/public_html/cgi-bin"> > > # > # This may also be "None", "All", or any combination of "Indexes", > # "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews". > # > # Note that "MultiViews" must be named *explicitly* --- "Options All" > # doesn't give it to you. > # > # Options FollowSymLinks MultiViews ExecCGI > # AddHandler cgi-script .cgi .pl > > # > # This controls which options the .htaccess files in directories can > # override. Can also be "All", or any combination of "Options", "FileInfo", > # "AuthConfig", and "Limit" > # > # AllowOverride Limit > # AllowOverride Options > > > # > # Controls who can get stuff from this server. > # > # Order allow,deny > # Allow from all > #</Directory> > > > # > # UserDir: The name of the directory which is appended onto a user's home > # directory if a ~user request is received. > # > <IfModule mod_userdir.c> > UserDir public_html > Options Indexes FollowSymLinks MultiViews ExecCGI > </IfModule> > > # > # Control access to UserDir directories. The following is an example > # for a site where these directories are restricted to read-only. > # > #<Directory /home/*/public_html> > # AllowOverride FileInfo AuthConfig Limit > # Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec > # <Limit GET POST OPTIONS PROPFIND> > # Order allow,deny > # Allow from all > # </Limit> > # <LimitExcept GET POST OPTIONS PROPFIND> > # Order deny,allow > # Deny from all > # </LimitExcept> > #</Directory> > > # > # DirectoryIndex: Name of the file or files to use as a pre-written HTML > # directory index. Separate multiple entries with spaces. > # > <IfModule mod_dir.c> > DirectoryIndex index.html > </IfModule> > > # > # AccessFileName: The name of the file to look for in each directory > # for access control information. > # > AccessFileName .htaccess > > # > # The following lines prevent .htaccess files from being viewed by > # Web clients. Since .htaccess files often contain authorization > # information, access is disallowed for security reasons. Comment > # these lines out if you want Web visitors to see the contents of > # .htaccess files. If you change the AccessFileName directive above, > # be sure to make the corresponding changes here. > # > # Also, folks tend to use names such as .htpasswd for password > # files, so this will protect those as well. > # > <Files ~ "^\.ht"> > Order allow,deny > Deny from all > </Files> > > # > # CacheNegotiatedDocs: By default, Apache sends "Pragma: no-cache" with each > # document that was negotiated on the basis of content. This asks proxy > # servers not to cache the document. Uncommenting the following line disables > # this behavior, and proxies will be allowed to cache the documents. > # > #CacheNegotiatedDocs > > # > # UseCanonicalName: (new for 1.3) With this setting turned on, whenever > # Apache needs to construct a self-referencing URL (a URL that refers back > # to the server the response is coming from) it will use ServerName and > # Port to form a "canonical" name. With this setting off, Apache will > # use the hostname:port that the client supplied, when possible. This > # also affects SERVER_NAME and SERVER_PORT in CGI scripts. > # > UseCanonicalName On > > # > # TypesConfig describes where the mime.types file (or equivalent) is > # to be found. > # > <IfModule mod_mime.c> > TypesConfig /home/grendel/jing/apache/conf/mime.types > </IfModule> > > # > # DefaultType is the default MIME type the server will use for a document > # if it cannot otherwise determine one, such as from filename extensions. > # If your server contains mostly text or HTML documents, "text/plain" is > # a good value. If most of your content is binary, such as applications > # or images, you may want to use "application/octet-stream" instead to > # keep browsers from trying to display binary files as though they are > # text. > # > DefaultType text/plain > > # > # The mod_mime_magic module allows the server to use various hints from the > # contents of the file itself to determine its type. The MIMEMagicFile > # directive tells the module where the hint definitions are located. > # mod_mime_magic is not part of the default server (you have to add > # it yourself with a LoadModule [see the DSO paragraph in the 'Global > # Environment' section], or recompile the server and include mod_mime_magic > # as part of the configuration), so it's enclosed in an <IfModule> container. > # This means that the MIMEMagicFile directive will only be processed if the > # module is part of the server. > # > <IfModule mod_mime_magic.c> > MIMEMagicFile /home/grendel/jing/apache/conf/magic > </IfModule> > > # > # HostnameLookups: Log the names of clients or just their IP addresses > # e.g., www.apache.org (on) or 204.62.129.132 (off). > # The default is off because it'd be overall better for the net if people > # had to knowingly turn this feature on, since enabling it means that > # each client request will result in AT LEAST one lookup request to the > # nameserver. > # > HostnameLookups On > > # > # ErrorLog: The location of the error log file. > # If you do not specify an ErrorLog directive within a <VirtualHost> > # container, error messages relating to that virtual host will be > # logged here. If you *do* define an error logfile for a <VirtualHost> > # container, that host's errors will be logged there and not here. > # > ErrorLog /home/grendel/jing/apache/logs/error_log > > # > # LogLevel: Control the number of messages logged to the error_log. > # Possible values include: debug, info, notice, warn, error, crit, > # alert, emerg. > # > LogLevel warn > > # > # The following directives define some format nicknames for use with > # a CustomLog directive (see below). > # > LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined > LogFormat "%h %l %u %t \"%r\" %>s %b" common > LogFormat "%{Referer}i -> %U" referer > LogFormat "%{User-agent}i" agent > > # > # The location and format of the access logfile (Common Logfile Format). > # If you do not define any access logfiles within a <VirtualHost> > # container, they will be logged here. Contrariwise, if you *do* > # define per-<VirtualHost> access logfiles, transactions will be > # logged therein and *not* in this file. > # > #CustomLog /home/grendel/jing/apache/logs/access_log common > > # > # If you would like to have agent and referer logfiles, uncomment the > # following directives. > # > #CustomLog /home/grendel/jing/apache/logs/referer_log referer > #CustomLog /home/grendel/jing/apache/logs/agent_log agent > > # > # If you prefer a single logfile with access, agent, and referer information > # (Combined Logfile Format) you can use the following directive. > # > CustomLog /home/grendel/jing/apache/logs/access_log combined > > # > # Optionally add a line containing the server version and virtual host > # name to server-generated pages (error documents, FTP directory listings, > # mod_status and mod_info output etc., but not CGI generated documents). > # Set to "EMail" to also include a mailto: link to the ServerAdmin. > # Set to one of: On | Off | EMail > # > ServerSignature On > > # > # Aliases: Add here as many aliases as you need (with no limit). The format is > # Alias fakename realname > # > <IfModule mod_alias.c> > > # > # Note that if you include a trailing / on fakename then the server will > # require it to be present in the URL. So "/icons" isn't aliased in this > # example, only "/icons/".. > # > Alias /icons/ "/home/grendel/jing/apache/icons/" > > <Directory "/home/grendel/jing/apache/icons"> > Options Indexes MultiViews > AllowOverride None > Order allow,deny > Allow from all > </Directory> > > # > # ScriptAlias: This controls which directories contain server scripts. > # ScriptAliases are essentially the same as Aliases, except that > # documents in the realname directory are treated as applications and > # run by the server when requested rather than as documents sent to the client. > # The same rules about trailing "/" apply to ScriptAlias directives as to > # Alias. > # > ScriptAlias /cgi-bin/ /home/grendel/jing/apache/cgi-bin/ > > # > # "/home/grendel/jing/apache/cgi-bin" should be changed to whatever your ScriptAliased > # CGI directory exists, if you have that configured. > # > <Directory "/home/grendel/jing/apache/cgi-bin"> > AllowOverride Limit > Options FollowSymLinks ExecCGI > Order allow,deny > Allow from all > </Directory> > > </IfModule> > # End of aliases. > > # > # Redirect allows you to tell clients about documents which used to exist in > # your server's namespace, but do not anymore. This allows you to tell the > # clients where to look for the relocated document. > # Format: Redirect old-URI new-URL > # > > # > # Directives controlling the display of server-generated directory listings. > # > <IfModule mod_autoindex.c> > > # > # FancyIndexing is whether you want fancy directory indexing or standard > # > #IndexOptions FancyIndexing > IndexOptions none > > # > # AddIcon* directives tell the server which icon to show for different > # files or filename extensions. These are only displayed for > # FancyIndexed directories. > # > AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip > > AddIconByType (TXT,/icons/text.gif) text/* > AddIconByType (IMG,/icons/image2.gif) image/* > AddIconByType (SND,/icons/sound2.gif) audio/* > AddIconByType (VID,/icons/movie.gif) video/* > > AddIcon /icons/binary.gif .bin .exe > AddIcon /icons/binhex.gif .hqx > AddIcon /icons/tar.gif .tar > AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv > AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip > AddIcon /icons/a.gif .ps .ai .eps > AddIcon /icons/layout.gif .html .shtml .htm .pdf > AddIcon /icons/text.gif .txt > AddIcon /icons/c.gif .c > AddIcon /icons/p.gif .pl .py > AddIcon /icons/f.gif .for > AddIcon /icons/dvi.gif .dvi > AddIcon /icons/uuencoded.gif .uu > AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl > AddIcon /icons/tex.gif .tex > AddIcon /icons/bomb.gif core > > AddIcon /icons/back.gif .. > AddIcon /icons/hand.right.gif README > AddIcon /icons/folder.gif ^^DIRECTORY^^ > AddIcon /icons/blank.gif ^^BLANKICON^^ > > # > # DefaultIcon is which icon to show for files which do not have an icon > # explicitly set. > # > DefaultIcon /icons/unknown.gif > > # > # AddDescription allows you to place a short description after a file in > # server-generated indexes. These are only displayed for FancyIndexed > # directories. > # Format: AddDescription "description" filename > # > #AddDescription "GZIP compressed document" .gz > #AddDescription "tar archive" .tar > #AddDescription "GZIP compressed tar archive" .tgz > > # > # ReadmeName is the name of the README file the server will look for by > # default, and append to directory listings. > # > # HeaderName is the name of a file which should be prepended to > # directory indexes. > # > # If MultiViews are amongst the Options in effect, the server will > # first look for name.html and include it if found. If name.html > # doesn't exist, the server will then look for name.txt and include > # it as plaintext if found. > # > ReadmeName README > HeaderName HEADER > > # > # IndexIgnore is a set of filenames which directory indexing should ignore > # and not include in the listing. Shell-style wildcarding is permitted. > # > IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t > > </IfModule> > # End of indexing directives. > > # > # Document types. > # > <IfModule mod_mime.c> > > # > # AddEncoding allows you to have certain browsers (Mosaic/X 2.1+) uncompress > # information on the fly. Note: Not all browsers support this. > # Despite the name similarity, the following Add* directives have nothing > # to do with the FancyIndexing customization directives above. > # > AddEncoding x-compress Z > AddEncoding x-gzip gz tgz > > # > # AddLanguage allows you to specify the language of a document. You can > # then use content negotiation to give a browser a file in a language > # it can understand. > # > # Note 1: The suffix does not have to be the same as the language > # keyword --- those with documents in Polish (whose net-standard > # language code is pl) may wish to use "AddLanguage pl .po" to > # avoid the ambiguity with the common suffix for perl scripts. > # > # Note 2: The example entries below illustrate that in quite > # some cases the two character 'Language' abbriviation is not > # identical to the two character 'Country' code for its country, > # E.g. 'Danmark/dk' versus 'Danish/da'. > # > # Note 3: In the case of 'ltz' we violate the RFC by using a three char > # specifier. But there is 'work in progress' to fix this and get > # the reference data for rfc1766 cleaned up. > # > # Danish (da) - Dutch (nl) - English (en) - Estonian (ee) > # French (fr) - German (de) - Greek-Modern (el) > # Italian (it) - Portugese (pt) - Luxembourgeois* (ltz) > # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz) > # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja) > # > AddLanguage da .dk > AddLanguage nl .nl > AddLanguage en .en > AddLanguage et .ee > AddLanguage fr .fr > AddLanguage de .de > AddLanguage el .el > AddLanguage it .it > AddLanguage ja .ja > AddCharset ISO-2022-JP .jis > AddLanguage pl .po > AddCharset ISO-8859-2 .iso-pl > AddLanguage pt .pt > AddLanguage pt-br .pt-br > AddLanguage ltz .lu > AddLanguage ca .ca > AddLanguage es .es > AddLanguage sv .se > AddLanguage cz .cz > > # LanguagePriority allows you to give precedence to some languages > # in case of a tie during content negotiation. > # > # Just list the languages in decreasing order of preference. We have > # more or less alphabetized them here. You probably want to change this. > # > <IfModule mod_negotiation.c> > LanguagePriority en da nl et fr de el it ja pl pt pt-br ltz ca es sv > </IfModule> > > # > # AddType allows you to tweak mime.types without actually editing it, or to > # make certain files to be certain types. > # > # For example, the PHP 3.x module (not part of the Apache distribution - see > # http://www.php.net) will typically use: > # > #AddType application/x-httpd-php3 .php3 > #AddType application/x-httpd-php3-source .phps > # > # And for PHP 4.x, use: > # > #AddType application/x-httpd-php .php > #AddType application/x-httpd-php-source .phps > > AddType application/x-tar .tgz > > # > # AddHandler allows you to map certain file extensions to "handlers", > # actions unrelated to filetype. These can be either built into the server > # or added with the Action command (see below) > # > # If you want to use server side includes, or CGI outside > # ScriptAliased directories, uncomment the following lines. > # > # To use CGI scripts: > # > AddHandler cgi-script .cgi .pl > > # > # To use server-parsed HTML files > # > AddType text/html .shtml > AddHandler server-parsed .shtml > > # > # Uncomment the following line to enable Apache's send-asis HTTP file > # feature > # > AddHandler send-as-is asis > > # > # If you wish to use server-parsed imagemap files, use > # > AddHandler imap-file map > > # > # To enable type maps, you might want to use > # > AddHandler type-map var > > </IfModule> > # End of document types. > > # > # Action lets you define media types that will execute a script whenever > # a matching file is called. This eliminates the need for repeated URL > # pathnames for oft-used CGI file processors. > # Format: Action media/type /cgi-script/location > # Format: Action handler-name /cgi-script/location > # > > # > # MetaDir: specifies the name of the directory in which Apache can find > # meta information files. These files contain additional HTTP headers > # to include when sending the document > # > #MetaDir .web > > # > # MetaSuffix: specifies the file name suffix for the file containing the > # meta information. > # > #MetaSuffix .meta > > # > # Customizable error response (Apache style) > # these come in three flavors > # > # 1) plain text > #ErrorDocument 500 "The server made a boo boo. > # n.b. the (") marks it as text, it does not get output > # > # 2) local redirects > #ErrorDocument 404 /missing.html > # to redirect to local URL /missing.html > #ErrorDocument 404 /cgi-bin/missing_handler.pl > # N.B.: You can redirect to a script or a document using server-side-includes. > # > # 3) external redirects > #ErrorDocument 402 http://some.other_server.com/subscription_info.html > # N.B.: Many of the environment variables associated with the original > # request will *not* be available to such a script. > > # > # Customize behaviour based on the browser > # > <IfModule mod_setenvif.c> > > # > # The following directives modify normal HTTP response behavior. > # The first directive disables keepalive for Netscape 2.x and browsers that > # spoof it. There are known problems with these browser implementations. > # The second directive is for Microsoft Internet Explorer 4.0b2 > # which has a broken HTTP/1.1 implementation and does not properly > # support keepalive when it is used on 301 or 302 (redirect) responses. > # > BrowserMatch "Mozilla/2" nokeepalive > BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 > > # > # The following directive disables HTTP/1.1 responses to browsers which > # are in violation of the HTTP/1.0 spec by not being able to grok a > # basic 1.1 response. > # > BrowserMatch "RealPlayer 4\.0" force-response-1.0 > BrowserMatch "Java/1\.0" force-response-1.0 > BrowserMatch "JDK/1\.0" force-response-1.0 > > </IfModule> > > # > # Allow server status reports, with the URL of http://servername/server-status > # Change the ".your_domain.com" to match your domain to enable. > # > #<Location /server-status> > # SetHandler server-status > # Order deny,allow > # Deny from all > # Allow from .your_domain.com > #</Location> > > # > # Allow remote server configuration reports, with the URL of > # http://servername/server-info (requires that mod_info.c be loaded). > # Change the ".your_domain.com" to match your domain to enable. > # > #<Location /server-info> > # SetHandler server-info > # Order deny,allow > # Deny from all > # Allow from .your_domain.com > #</Location> > > # > # There have been reports of people trying to abuse an old bug from pre-1.1 > # days. This bug involved a CGI script distributed as a part of Apache. > # By uncommenting these lines you can redirect these attacks to a logging > # script on phf.apache.org. Or, you can record them yourself, using the script > # support/phf_abuse_log.cgi. > # > #<Location /cgi-bin/phf*> > # Deny from all > # ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi > #</Location> > > # > # Proxy Server directives. Uncomment the following lines to > # enable the proxy server: > # > #<IfModule mod_proxy.c> > #ProxyRequests On > # > #<Directory proxy:*> > # Order deny,allow > # Deny from all > # Allow from .your_domain.com > #</Directory> > > # > # Enable/disable the handling of HTTP/1.1 "Via:" headers. > # ("Full" adds the server version; "Block" removes all outgoing Via: headers) > # Set to one of: Off | On | Full | Block > # > #ProxyVia On > > # > # To enable the cache as well, edit and uncomment the following lines: > # (no cacheing without CacheRoot) > # > #CacheRoot "/home/grendel/jing/apache/proxy" > #CacheSize 5 > #CacheGcInterval 4 > #CacheMaxExpire 24 > #CacheLastModifiedFactor 0.1 > #CacheDefaultExpire 1 > #NoCache a_domain.com another_domain.edu joes.garage_sale.com > > #</IfModule> > # End of proxy directives. > > ### Section 3: Virtual Hosts > # > # VirtualHost: If you want to maintain multiple domains/hostnames on your > # machine you can setup VirtualHost containers for them. > # Please see the documentation at <URL:http://www.apache.org/docs/vhosts/> > # for further details before you try to setup virtual hosts. > # You may use the command line option '-S' to verify your virtual host > # configuration. > > # > # If you want to use name-based virtual hosts you need to define at > # least one IP address (and port number) for them. > # > #NameVirtualHost 12.34.56.78:80 > #NameVirtualHost 12.34.56.78 > > # > # VirtualHost example: > # Almost any Apache directive may go into a VirtualHost container. > # > #<VirtualHost ip.address.of.host.some_domain.com> > # ServerAdmin web...@ho...me_domain.com > # DocumentRoot /www/docs/host.some_domain.com > # ServerName host.some_domain.com > # ErrorLog logs/host.some_domain.com-error_log > # CustomLog logs/host.some_domain.com-access_log common > #</VirtualHost> > > #<VirtualHost _default_:*> > #</VirtualHost> > nobody 37242 37249 0 13:12:26 ? 0:00 /usr/local/depot/apache.312/bin/httpd > nobody 37248 37249 0 13:12:26 ? 0:00 /usr/local/depot/apache.312/bin/httpd > root 37249 1 0 13:12:25 ? 0:00 /usr/local/depot/apache.312/bin/httpd > nobody 37251 37249 0 13:12:26 ? 0:00 /usr/local/depot/apache.312/bin/httpd > nobody 37269 37249 0 13:12:26 ? 0:00 /usr/local/depot/apache.312/bin/httpd > nobody 37271 37249 0 13:12:26 ? 0:00 /usr/local/depot/apache.312/bin/httpd > root 38165 37204 0 13:14:01 pts/1 0:00 grep httpd ------------------------------------------------------------ Nathan Neulinger EMail: nn...@um... University of Missouri - Rolla Phone: (573) 341-4841 Computing Services Fax: (573) 341-4216 |