# httpd.conf Sample httpd.conf file By Michael Temari 7/03/2003 #serverroot path # # path = sets the translation for // # # these have special meaning if at beginning of path # # /~user = gets replaced with user home directory serverroot /~www #user username # # if present the server will run as the given username otherwise the # server will run as who ever started it (normally root). user www #chroot directory # # if present the server will be chroot'ed to the given directory name # normally the home directory of username given above. Be aware if this # is set then you can only access stuff off this new root. # # these have special meaning if at beginning of the directory # # // = gets replaced by serverroot directory # /~user = gets replaced with user home directory #chroot /~www #logfile filename # # the file must exist also and a log of http transactions will be kept # # these have special meaning if at the beginning of the filename # # // = gets replaced by serverroot directory # /~user = gets replaced with user home directory logfile /usr/adm/httpd.log #dbgfile filename # # the file must exist also and a debug log of http transactions will be kept # # these have special meaning if at the beginning of the filename # # // = gets replaced by serverroot directory # /~user = gets replaced with user home directory dbgfile /usr/adm/httpd.dbg # dirsend [list of files to try until 1st one is found] # dirsend index.htm # direxec [script to run for automatic directory page output] # # # these have special meaning if at beginning of script # # // = gets replaced by serverroot directory # /~user = gets replaced with user home directory # direxec /usr/local/bin/dir2html # vhost hostname VhostRoot # # vhost is for defining access for virtual hosts. If none are configured then # any host is accepted. If specified then access is only granted for requests # for hosts which are configured here. In the Vpath section below the /// gets # translated to the corresponding VhostRoot. # vhost temware.dyndns.org //doc/ # vhost minix.homeip.net //doc2/ # auth authname authdescription access [passwdfile [users]] # # auth defines any access authorization to be used in vpath # # authname = name to give to this authorization (case insensitive) # authdescription = Description of this authorization # access = r=read, w=write, x=execute, h=headers (other than rwxh then no access) # NOTE: r=file should be read, w=file can be overwrote # NOTE: x=file should be executed # NOTE: h=headers (executing program will produce all http headers) # NOTE: access is on top of unix access # passwdfile = Name of passwd file to be used (. means /etc/passwd) # (if none given then no user check) # users = valid users for this authorization (if none given then all users valid) # # these have special meaning if at beginning of passwdfile # # // = gets replaced by serverroot directory # /~user = gets replaced with user home directory # auth AnyBody AnyBody R System System_User R . Uploads Uploads RW . root # proxyauth authname authdescription access [passwdfile [users]] # # proxyauth defines any access authorization to be used for Proxy access # # authname = Same as auth above # authdescription = Same as auth above # access = Must be R to allow proxy # passwdfile = Same as auth above # users = Same as auth above # # proxyauth # Proxy Proxy R . # vpath from to auth # # vpath sets up a list of url path translations and authorizations # # from = user specified url # *=wildcard, $=wildard, but keep path for passing to program # to = real location # auth = authname from above (null for no authorization) # access = r-read, w-write, x-execute (if not given taken from auth record) # = h-headers (executing program will produce all http headers) # # these have special meaning if at beginning of to or serverroot fields # # // = gets replaced by serverroot directory # /// = gets replaced by vhost root directory if configured otherwise same as // # . = specified authorization only, use other translation elsewhere # /~user = gets replaced with user home directory # vpath * . AnyBody /* /// AnyBody /index.htm . AnyBody X /ip . AnyBody X /c1d1$ //exec/cdrom AnyBody X /c1d2$ //exec/cdrom AnyBody X /uploads* . Uploads /src* /usr/src AnyBody R # include filename # # include tells the server to continue parsing configuration information # in the given filename # # these have special meaning if at beginning of filename # # // = gets replaced by serverroot directory # /~user = gets replaced with user home directory include //etc/httpd.mtype