who know?
please post it to me,too.
email: [email protected]

解决方案 »

  1.   

    《Apache Server系统管理员手册》
                              -----电子工业出版社
     讲得很详细的,你去看一下。
                        
      

  2.   

    干嘛要书呢?只要知道一部分就可以了。下面是我的http.conf,你只要改BindAddress、ServerName、Port和最后手工配置就可以了。#
    # 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
    # C:/Program Files/Apache Group/Apache/conf/srm.conf and then C:/Program Files/Apache Group/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".
    #
    # NOTE: Where filenames are specified, you must use forward slashes
    # instead of backslashes (e.g., "c:/apache" instead of "c:\apache").
    # If a drive letter is omitted, the drive on which Apache.exe is located
    # will be used by default.  It is recommended that you always supply
    # an explicit drive letter in absolute paths, however, to avoid
    # confusion.
    #### 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.
    #
    # Do NOT add a slash at the end of the directory path.
    #
    ServerRoot "C:/Program Files/Apache Group/Apache"#
    # PidFile: The file in which the server should record its process
    # identification number when it starts.
    #
    PidFile 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 logs/apache_runtime_status#
    # In the standard configuration, the server will process httpd.conf (this 
    # file, specified by the -f command line option), 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#
    # Apache on Win32 always creates one child process to handle requests.  If it
    # dies, another child process is created automatically.  Within the child
    # process multiple threads handle incoming requests.  The next two
    # directives control the behaviour of the threads and processes.
    ##
    # 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 Win32, set this value to zero (unlimited)
    # unless advised otherwise.
    #
    # 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#
    # Number of concurrent threads (i.e., requests) the server will allow.
    # Set this value according to the responsiveness of the server (more
    # requests active at once means they're all handled more slowly) and
    # the amount of system resources you'll allow the server to consume.
    #
    ThreadsPerChild 50#
    # 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 192.168.0.7#
    # Apache Modules compiled into the standard Windows build
    #
    # The following modules are bound into the standard Apache binary distribution
    # for Windows.  To change the standard behavior, uncomment the following lines 
    # and modify the list of those specific modules to be enabled in the server.
    #
    # WARNING: This is an advanced option that may render your server inoperable!
    # Do not use these directives without expert guidance.
    #
    #ClearModuleList
    #AddModule mod_so.c mod_mime.c mod_access.c mod_auth.c mod_negotiation.c
    #AddModule mod_include.c mod_autoindex.c mod_dir.c mod_cgi.c mod_userdir.c
    #AddModule mod_alias.c mod_env.c mod_log_config.c mod_asis.c mod_imap.c
    #AddModule mod_actions.c mod_setenvif.c mod_isapi.c#
    # 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 `apache -l' for the list of already
    # built-in (statically linked and thus always available) modules in your Apache
    # binary.
    #
    # Note: The order in which modules are loaded is important.  Don't change
    # the order below without expert advice.
    #
    #LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll
    #LoadModule dbm_auth_module modules/ApacheModuleAuthDBM.dll
    #LoadModule digest_auth_module modules/ApacheModuleAuthDigest.dll
    #LoadModule cern_meta_module modules/ApacheModuleCERNMeta.dll
    #LoadModule digest_module modules/ApacheModuleDigest.dll
    #LoadModule expires_module modules/ApacheModuleExpires.dll
    #LoadModule headers_module modules/ApacheModuleHeaders.dll
    #LoadModule proxy_module modules/ApacheModuleProxy.dll
    #LoadModule rewrite_module modules/ApacheModuleRewrite.dll
    #LoadModule speling_module modules/ApacheModuleSpeling.dll
    #LoadModule info_module modules/ApacheModuleInfo.dll
    #LoadModule status_module modules/ApacheModuleStatus.dll
    #LoadModule usertrack_module modules/ApacheModuleUserTrack.dll
    #LoadModule jserv_module modules/ApacheModuleJServ.dll#
    # 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.
    ##
    # Port: The port to which the standalone server listens.  Certain firewall
    # products must be configured before Apache can listen to a specific port.
    # Other running httpd servers will also interfere with this port.  Disable
    # all firewall, security, and other services if you encounter problems.
    # To help diagnose problems use the Windows NT command NETSTAT -a
    #
    Port 80#
    # 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 [email protected]#
    # 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.
    #
    # 127.0.0.1 is the TCP/IP local loop-back address, often named localhost. Your 
    # machine always knows itself by this address. If you use Apache strictly for 
    # local testing and development, you may use 127.0.0.1 as the server name.
    #
    ServerName http://192.168.0.7/
    #
    # 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 "C:/Program Files/Apache Group/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 None
    </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 "C:/Program Files/Apache Group/Apache/htdocs">#
    # 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 Indexes FollowSymLinks MultiViews#
    # 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 None#
    # 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.
    #
    # Under Win32, we do not currently try to determine the home directory of
    # a Windows login, so a format such as that below needs to be used.  See
    # the UserDir documentation for details.
    #
    <IfModule mod_userdir.c>
        UserDir "C:/Program Files/Apache Group/Apache/users/"
    </IfModule>#
    # Control access to UserDir directories.  The following is an example
    # for a site where these directories are restricted to read-only.
    #
    #<Directory "C:/Program Files/Apache Group/Apache/users">
    #    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.htm
        DirectoryIndex index.html
        DirectoryIndex index.php
        DirectoryIndex index.php3
        DirectoryIndex index.php4
        DirectoryIndex index.phtml
        DirectoryIndex index.pl
        DirectoryIndex index.js
        DirectoryIndex index.jsp
        DirectoryIndex index.asp
    </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 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 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 Off#
    # 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 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 logs/access.log common#
    # If you would like to have agent and referer logfiles, uncomment the
    # following directives.
    #
    #CustomLog logs/referer.log referer
    #CustomLog 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 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# 
    # Apache parses all CGI scripts for the shebang line by default.
    # This comment line, the first line of the script, consists of the symbols
    # pound (#) and exclamation (!) followed by the path of the program that 
    # can execute this specific script.  For a perl script, with perl.exe in
    # the C:\Program Files\Perl directory, the shebang line should be:   #!c:/program files/perl/perl# Note you _must_not_ indent the actual shebang line, and it must be the
    # first line of the file.  Of course, CGI processing must be enabled by 
    # the appropriate ScriptAlias or Options ExecCGI directives for the files 
    # or directory in question.
    #
    # However, Apache on Windows allows either the Unix behavior above, or can
    # use the Registry to match files by extention.  The command to execute 
    # a file of this type is retrieved from the registry by the same method as 
    # the Windows Explorer would use to handle double-clicking on a file.
    # These script actions can be configured from the Windows Explorer View menu, 
    # 'Folder Options', and reviewing the 'File Types' tab.  Clicking the Edit
    # button allows you to modify the Actions, of which Apache 1.3 attempts to
    # perform the 'Open' Action, and failing that it will try the shebang line.
    # This behavior is subject to change in Apache release 2.0.
    #
    # Each mechanism has it's own specific security weaknesses, from the means
    # to run a program you didn't intend the website owner to invoke, and the
    # best method is a matter of great debate.
    #
    # To enable the this Windows specific behavior (and therefore -disable- the
    # equivilant Unix behavior), uncomment the following directive:
    #
    #ScriptInterpreterSource registry
    #
    # The directive above can be placed in individual <Directory> blocks or the
    # .htaccess file, with either the 'registry' (Windows behavior) or 'script' 
    # (Unix behavior) option, and will override this server default option.
    ##
    # 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/ "C:/Program Files/Apache Group/Apache/icons/"    <Directory "C:/Program Files/Apache Group/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/ "C:/Program Files/Apache Group/Apache/cgi-bin/"    #
        # "C:/Program Files/Apache Group/Apache/cgi-bin" should be changed to whatever your ScriptAliased
        # CGI directory exists, if you have that configured.
        #
        <Directory "C:/Program Files/Apache Group/Apache/cgi-bin">
            AllowOverride None
            Options None
            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    #
        # 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. 'Dan/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) - Korean (kr) - Norwegian (no)
        # Portugese (pt) - Luxembourgeois* (ltz)
        # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz)
        # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)
        # Russian (ru)
        #
        AddLanguage da .dk
        AddLanguage nl .nl
        AddLanguage en .en
        AddLanguage et .ee
        AddLanguage fr .fr
        AddLanguage de .de
        AddLanguage el .el
        AddLanguage he .he
        AddCharset ISO-8859-8 .iso8859-8
        AddLanguage it .it
        AddLanguage ja .ja
        AddCharset ISO-2022-JP .jis
        AddLanguage kr .kr
        AddCharset ISO-2022-KR .iso-kr
        AddLanguage no .no
        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
        AddLanguage ru .ru
        AddLanguage tw .tw
        AddCharset Big5         .Big5    .big5
        AddCharset WINDOWS-1251 .cp-1251
        AddCharset CP866        .cp866
        AddCharset ISO-8859-5   .iso-ru
        AddCharset KOI8-R       .koi8-r
        AddCharset UCS-2        .ucs2
        AddCharset UCS-4        .ucs4
        AddCharset UTF-8        .utf8    # 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 kr no pl pt pt-br ru ltz ca es sv tw
        </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    #
        # 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 single leading (") s 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>
    # End of browser customization directives#
    # 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 "C:/Program Files/Apache Group/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. Most configurations
    # use only name-based virtual hosts so the server doesn't need to worry about
    # IP addresses. This is indicated by the asterisks in the directives below.
    #
    # 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.#
    # Use name-based virtual hosting.
    #
    #NameVirtualHost *#
    # VirtualHost example:
    # Almost any Apache directive may go into a VirtualHost container.
    # The first VirtualHost section is used for requests without a known
    # server name.
    #
    #<VirtualHost *>
    #    ServerAdmin [email protected]
    #    DocumentRoot /www/docs/dummy-host.example.com
    #    ServerName dummy-host.example.com
    #    ErrorLog logs/dummy-host.example.com-error_log
    #    CustomLog logs/dummy-host.example.com-access_log common
    #</VirtualHost>
    ######### 下面要手工配置 ###########
    ScriptAlias /php4/ "C:/PHP4/" 
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .php3
    AddType application/x-httpd-php .php4
    AddType application/x-httpd-php .phtml 
    Action application/x-httpd-php "/php4/php.exe"Alias /mysql/ "C:/Mysql/"
    Alias /phpweb/ "D:/Web/"
      

  3.   

    楼上的老兄给了英文版,我再给个中文版。
    Apache Server设置虚拟 WEB 
    unix 平台与NT平台使用apache server的设置相同。以下重点以unix平台为例说明apache server的设置。另外值得注意的是,虚拟web的成功设置,有大约50%的工作量是在域名的注册与解析方面。所以一般先注册好域名然后再做虚拟WEB 设置。 
    一 、IP型虚拟主机 
    IP型虚拟主机指每一虚拟主机对应唯一的IP。可通过多个物理网卡或虚拟网口实现多IP,Solaris2.5和Windows NT都支持这种方式。 
    两种配置多虚拟主机的方法: 
    1、为每一虚拟主机启动一个httpd进程。 
    下列情况下使用此方法: 
    1) 需考虑安全隔离问题,如两个httpd运行于不同的User、Group、Listen、ServerRoot,两者用户除通过Web相互浏览数据,无法访问其他数据。 
    2) 能提供足够内存和文件描述器。 
    设置方法: 
    为每一虚拟主机建立一个独立的httpd安装,在每一个安装路径的配置文件httpd.conf里,用Listen指令指定进程服务的IP,如:Listen 10.68.37.10:80 
    2、为所有虚拟主机启动一个httpd进程。 
    下列情况下使用此方法: 
    1) 允许在虚拟主机间共享httpd配置。 
    2) 计算机服务于大量的请求,运行多个进程使服务器性能降低成为重要考虑因素。 
    设置方法: 
    在配置文件httpd.conf里,用VirtualHost指令为每一虚拟主机设置ServerAdmin、ServerName、DocumentRoot、 ErrorLog、TransferLog或CustomLog,如: 
    〈VirtualHost www.smallco.com〉 #此处建议用IP 
    ServerAdmin [email protected] 
    DocumentRoot /usr/local/etc/httpd/htdocs/smallco 
    ServerName www.smallco.com #建议此处用域名 
    ErrorLog /usr/local/etc/httpd/logs/smallco/error_log 
    TransferLog /usr/local/etc/httpd/logs/smallco/access_log 
    〈/VirtualHost〉 
    〈VirtualHost www.baygroup.org〉 #此处建议用IP 
    ServerAdmin [email protected] 
    DocumentRoot /groups/baygroup/www 
    ServerName www.baygroup.org #建议此处用域名 
    ErrorLog /groups/baygroup/logs/error_log 
    TransferLog /groups/baygroup/logs/access_log 
    〈/VirtualHost〉 
    同时要做虚拟网口或网卡的配置,在DNS也要做相应设置。 
    二 、名字型虚拟主机(Apache1.3以上版本支持) 
      IP型虚拟主机虽好,但不是最佳方案。它要求每一虚拟主机有一专用 IP,在某些机器上难于实现。名字型虚拟主机是指每一虚拟主机的名字不相同,但IP一样。它的好处是不限制虚拟主机数量,配置、使用简单,不需另外的软硬件。缺点是客户端必须支持该部分协议,最近版本的浏览器都支持,某些老版本浏览器不支持。但Apache为此提供了解决方法。 
    设置方法: 
    在配置文件httpd.conf里,用NameVirtualHost指令设置虚拟主机,如: 
    NameVirtualHost 111.22.33.44 
    〈VirtualHost 111.22.33.44〉 #建议此处用IP 
    ServerName www.domain.tld #建议此处用域名 
    DocumentRoot /web/domain 
    〈/VirtualHost〉 
    同时,在DNS定义www.domain.tld指向111.22.33.44。 
    注意:当在NameVirtualHost指令后使用IP时,任何使用IP的URL请求都是针对虚拟主机的,主服务器从不会响应一个使用IP的URL 请求。另外,有些服务器希望以多个名字被访问。例如,假设有某一IP的服务器,希望以名domain.tld、www2.domain.tld都能被访问,做法是在VirtualHost指令部分使用ServerAlias指令。如:ServerAlias domain.tld *.domain.tld 
    另附一些虚拟主机的设置实例。 
      
      
    附:虚拟主机设置实例 
    IP型的虚拟主机配置 
    Setup 1: 服务器有两个IP, 
    111.22.33.44 server.domain.tld 
    111.22.33.55 www.otherdomain.tld 
    www.domain.tld 是server.domain.tld 的别名(CNAME),代表主服务器。 
    服务器配置: 
    ... 
    Port 80 
    DocumentRoot /www/domain 
    ServerName www.domain.tld 
    〈VirtualHost 111.22.33.55〉 
    DocumentRoot /www/otherdomain 
    ServerName www.otherdomain.tld 
    ... 
    〈/VirtualHost〉 
    Setup 2: 基本同Setup1,但不设置专门的主服务器。 
    服务器配置: 
    ... 
    Port 80 
    ServerName server.domain.tld 
    〈VirtualHost 111.22.33.44〉 
    DocumentRoot /www/domain 
    ServerName www.domain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.55〉 
    DocumentRoot /www/otherdomain 
    ServerName www.otherdomain.tld 
    ... 
    〈/VirtualHost〉 
    这种设置只有当URL为http://server.domain.tld时才击中主服务器 
    Setup 3: 服务器有两个IP, 
    111.22.33.44 server.domain.tld 
    111.22.33.55 www-cache.domain.tld 
    www.domain.tld 是server.domain.tld 的别名(CNAME),代表主服务器。 
    www-cache.domain.tld是proxy-cache,端口是8080,Web服务器使用默认的80。 
    服务器配置: 
    ... 
    Port 80 
    Listen 111.22.33.44:80 
    Listen 111.22.33.55:8080 
    ServerName server.domain.tld 
    〈VirtualHost 111.22.33.44:80〉 
    DocumentRoot /www/domain 
    ServerName www.domain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.55:8080〉 
    ServerName www-cache.domain.tld 
    ... 
    〈Directory proxy:〉 
    order deny,allow 
    deny from all 
    allow from 111.22.33 
    〈/Directory〉 
    〈/VirtualHost〉 
      
    名字型虚拟主机配置 
    Setup 1: 服务器有一个IP, 
    111.22.33.44 server.domain.tld. 
    www.domain.tld和www.sub.domain.tld是别名(CNAMEs) 。 
    服务器配置: 
    ... 
    Port 80 
    ServerName server.domain.tld 
    NameVirtualHost 111.22.33.44 
    〈VirtualHost 111.22.33.44〉 
    DocumentRoot /www/domain 
    ServerName www.domain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.44〉 
    DocumentRoot /www/subdomain 
    ServerName www.sub.domain.tld 
    ... 
    〈/VirtualHost〉 
    若使用IP访问服务器,由于 www.domain.tld 有最高优先级,被认为是默认服务器或 
    第一服务器。 
    Setup 2:服务器有两个IP, 
    111.22.33.44 server1.domain.tld 用于主服务器 
    111.22.33.55 server2.domain.tld 用于虚拟主机 
    别名www.domain.tld用于主服务器, 
    别名www.otherdomain.tld用于一个虚拟主机, 
    别名www.sub.domain.tld,*.sub.domain.tld 用于另一虚拟主机, 
    服务器配置: 
    ... 
    Port 80 
    ServerName www.domain.tld 
    DocumentRoot /www/domain 
    NameVirtualHost 111.22.33.55 
    〈VirtualHost 111.22.33.55〉 
    DocumentRoot /www/otherdomain 
    ServerName www.otherdomain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.55〉 
    DocumentRoot /www/subdomain 
    ServerName www.sub.domain.tld 
    ServerAlias *.sub.domain.tld 
    ... 
    〈/VirtualHost〉 
    混合型(IP/名字)虚拟主机配置 
    Setup:服务器有三个IP, 
    111.22.33.44 server.domain.tld 用于名字型虚拟主机 
    111.22.33.55 www.otherdomain1.tld 用于IP型虚拟主机 
    111.22.33.66 www.otherdomain2.tld 用于IP型虚拟主机 
    服务器配置: 
    ... 
    Port 80 
    ServerName server.domain.tld 
    NameVirtualHost 111.22.33.44 
    〈VirtualHost 111.22.33.44〉 
    DocumentRoot /www/domain 
    ServerName www.domain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.44〉 
    DocumentRoot /www/subdomain1 
    ServerName www.sub1.domain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.44〉 
    DocumentRoot /www/subdomain2 
    ServerName www.sub2.domain.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.55〉 
    DocumentRoot /www/otherdomain1 
    ServerName www.otherdomain1.tld 
    ... 
    〈/VirtualHost〉 
    〈VirtualHost 111.22.33.66〉 
    DocumentRoot /www/otherdomain2 
    ServerName www.otherdomain2.tld 
    ... 
    〈/VirtualHost〉 
    端口型虚拟主机配置 
    Setup: 服务器有一个IP, 
    111.22.33.44 www.domain.tld 
    不需要另外的别名或IP,采用端口型虚拟主机即可设置一个配置有别于主服务器的虚 
    拟主机。 
    服务器配置: 
    ... 
    Listen 80 
    Listen 8080 
    ServerName www.domain.tld 
    DocumentRoot /www/domain 
    〈VirtualHost 111.22.33.44:8080〉 
    DocumentRoot /www/domain2 
    ... 
    〈/VirtualHost〉