2013-12-22 16:17:01
来 源
kejihao
Apache
本文介绍Apache2.2tomcat5.5mod_jk整合配置成功,希望对于初学Apache服务器相关的朋友有帮助,更多Apache安装、配置、报错处理等资源请本站内搜索。
1安装tomcat5.5

这里不用多说了,网上多的是

2 安装apache2.2

就是apache2.2安装时有一点注意的就是apr和apr-util,不过很很简单了,看一下apache2.2的官方文档第一页就说了这个问题apr>1.2版本然后根据再安装

apr/apr-util >= 1.2

apr and apr-util are bundled with the Apache HTTPd source releases, and will be used without any problems in almost all circumstances. However, if apr or apr-util, versions 1.0 or 1.1, are installed on your system, you must either upgrade your apr/apr-util installations to 1.2, or have httpd use seperate builds. To use the bundled apr/apr-util sources for this purpose you must install them manually:

# Build and install apr 1.2

cd srclib/apr

./configure --prefix=/usr/local/apr-httpd/

make

make install

# Build and install apr-util 1.2

cd ../apr-util

./configure --prefix=/usr/local/apr-util-httpd/ --with-apr=/usr/local/apr-httpd/

make

make install

# Configure httpd

cd ../../

./configure --with-apr=/usr/local/apr-httpd/ --with-apr-util=/usr/local/apr-util-httpd/

3安装tomcat-connectors-1.2.22-src.tar

直接用less README.txt进行查看,安装完在/usr/local/apache2/modules/就会有 mod_jk.so

然后修改下面的httd.conf如下:

httpd.conf内容

#

# This is the main Apache HTTP server configuration file.  It contains the

# configuration directives that give the server its instructions.

# See  for detailed information.

# In particular, see

#

# for a discussion of each configuration directive.

#

# 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.  

#

# 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/apache2" will be interpreted by the

# server as "/usr/local/apache2/logs/foo.log".

#

# 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.  If you point

# ServerRoot at a non-local disk, be sure to point the LockFile directive

# at a local disk.  If you wish to share the same ServerRoot for multiple

# httpd daemons, you will need to change at least LockFile and PidFile.

#

ServerRoot "/usr/local/apache2"

#

# Listen: Allows you to bind Apache to specific IP addresses and/or

# ports, instead of the default. See also the

# directive.

#

# Change this to Listen on specific IP addresses as shown below to

# prevent Apache from glomming onto all bound IP addresses.

#

#Listen 12.34.56.78:80

Listen 80

#

# 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.

# Statically compiled modules (those listed by `httpd -l’) do not need

# to be loaded here.

#

# Example:

# LoadModule foo_module modules/mod_foo.so

#

LoadModule jk_module modules/mod_jk.so    JkWorkersFile /usr/local/apache2/conf/worker2.properties    # Where to put jk shared memory    JkShmFile     /usr/local/apache2/logs/mod_jk.shm    # Where to put jk logs    JkLogFile     /usr/local/apache2/logs/mod_jk.log    # Set the jk log level [debug/error/info]    JkLogLevel    info    # Select the timestamp log format    JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "    # Send servlet for context /examples to worker named worker1    #JkMount  /examples/servlet/* worker1    # Send JSPs  for context /examples to worker named worker1    #JkMount  /examples/*.jsp worker1    JkMount  /*.jsp worker1    JkMount  /*.asp worker1

#

# 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.

# It is usually good practice to create a dedicated user and group for

# running httpd, as with most system services.

#

User daemon

Group daemon

# ’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

#  definition.  These values also provide defaults for

# any  containers you may define later in the file.

#

# All of these directives may appear inside  containers,

# in which case these default settings will be overridden for the

# virtual host being defined.

#

#

# ServerAdmin: Your address, where problems with the server should be

# e-mailed.  This address appears on some server-generated pages, such

# as error documents.  e.g. [email protected]

#

ServerAdmin [email protected]

#

# ServerName gives the name and port that the server uses to identify itself.

# This can often be determined automatically, but we recommend you specify

# it explicitly to prevent problems during startup.

#

# If your host doesn’t have a registered DNS name, enter its IP address here.

#

#ServerName www.example.com:80

#

# 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 "/usr/local/apache2/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

# features.  

#

    Options FollowSymLinks

    AllowOverride None

    Order deny,allow

    Deny from all

#

# 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.

#

    #

    # Possible values for the Options directive are "None", "All",

    # or any combination of:

    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

    #

    # Note that "MultiViews" must be named *explicitly* --- "Options All"

    # doesn’t give it to you.

    #

    # The Options directive is both complicated and important.  Please see

    # http://httpd.apache.org/docs/2.2/mod/core.html#options

    # for more information.

    #

    Options Indexes FollowSymLinks

    #

    # AllowOverride controls what directives may be placed in .htaccess files.

    # It can be "All", "None", or any combination of the keywords:

    #   Options FileInfo AuthConfig Limit

    #

    AllowOverride None

    #

    # Controls who can get stuff from this server.

    #

    Order allow,deny

    Allow from all

#

# DirectoryIndex: sets the file that Apache will serve if a directory

# is requested.

#

    DirectoryIndex index.html

#

# The following lines prevent .htaccess and .htpasswd files from being

# viewed by Web clients.

#

    Order allow,deny

    Deny from all

    Satisfy All

#

# ErrorLog: The location of the error log file.

# If you do not specify an ErrorLog directive within a

# container, error messages relating to that virtual host will be

# logged here.  If you *do* define an error logfile for a

# 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

      # You need to enable mod_logio.c to use %I and %O

      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio

    #

    # The location and format of the access logfile (Common Logfile Format).

    # If you do not define any access logfiles within a

    # container, they will be logged here.  Contrariwise, if you *do*

    # define per- access logfiles, transactions will be

    # logged therein and *not* in this file.

    #

    CustomLog logs/access_log common

    #

    # If you prefer a logfile with access, agent, and referer information

    # (Combined Logfile Format) you can use the following directive.

    #

    #CustomLog logs/access_log combined

    #

    # Redirect: Allows you to tell clients about documents that used to

    # exist in your server’s namespace, but do not anymore. The client

    # will make a new request for the document at its new location.

    # Example:

    # Redirect permanent /foo http://www.example.com/bar

    #

    # Alias: Maps web paths into filesystem paths and is used to

    # access content that does not live under the DocumentRoot.

    # Example:

    # Alias /webpath /full/filesystem/path

    #

    # If you include a trailing / on /webpath then the server will

    # require it to be present in the URL.  You will also likely

    # need to provide a  section to allow access to

    # the filesystem path.

    #

    # ScriptAlias: This controls which directories contain server scripts.

    # ScriptAliases are essentially the same as Aliases, except that

    # documents in the target 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/ "/usr/local/apache2/cgi-bin/"

    #

    # ScriptSock: On threaded servers, designate the path to the UNIX

    # socket used to communicate with the CGI daemon of mod_cgid.

    #

    #Scriptsock logs/cgisock

#

# "/usr/local/apache2/cgi-bin" should be changed to whatever your ScriptAliased

# CGI directory exists, if you have that configured.

#

    AllowOverride None

    Options None

    Order allow,deny

    Allow from all

#

# DefaultType: 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

    #

    # TypesConfig points to the file containing the list of mappings from

    # filename extension to MIME-type.

    #

    TypesConfig conf/mime.types

    #

    # AddType allows you to add to or override the MIME configuration

    # file specified in TypesConfig for specific file types.

    #

    #AddType application/x-gzip .tgz

    #

    # AddEncoding allows you to have certain browsers uncompress

    # information on the fly. Note: Not all browsers support this.

    #

    #AddEncoding x-compress .Z

    #AddEncoding x-gzip .gz .tgz

    #

    # If the AddEncoding directives above are commented-out, then you

    # probably should define those extensions to indicate media types:

    #

    AddType application/x-compress .Z

    AddType application/x-gzip .gz .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 directive (see below)

    #

    # To use CGI scripts outside of ScriptAliased directories:

    # (You will also need to add "ExecCGI" to the "Options" directive.)

    #

    #AddHandler cgi-script .cgi

    # For type maps (negotiated resources):

    #AddHandler type-map var

    #

    # Filters allow you to process content before it is sent to the client.

    #

    # To parse .shtml files for server-side includes (SSI):

    # (You will also need to add "Includes" to the "Options" directive.)

    #

    #AddType text/html .shtml

    #AddOutputFilter INCLUDES .shtml

#

# 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.

#

#MIMEMagicFile conf/magic

#

# Customizable error responses come in three flavors:

# 1) plain text 2) local redirects 3) external redirects

#

# Some examples:

#ErrorDocument 500 "The server made a boo boo."

#ErrorDocument 404 /missing.html

#ErrorDocument 404 "/cgi-bin/missing_handler.pl"

#ErrorDocument 402 http://www.example.com/subscription_info.html

#

#

# EnableMMAP and EnableSendfile: On systems that support it,

# memory-mapping or the sendfile syscall is used to deliver

# files.  This usually improves server performance, but must

# be turned off when serving from networked-mounted

# filesystems or if support for these functions is otherwise

# broken on your system.

#

#EnableMMAP off

#EnableSendfile off

# Supplemental configuration

#

# The configuration files in the conf/extra/ directory can be

# included to add extra features or to modify the default configuration of

# the server, or you may simply copy their contents here and change as

# necessary.

# Server-pool management (MPM specific)

#Include conf/extra/httpd-mpm.conf

# Multi-language error messages

#Include conf/extra/httpd-multilang-errordoc.conf

# Fancy directory listings

#Include conf/extra/httpd-autoindex.conf

# Language settings

#Include conf/extra/httpd-languages.conf

# User home directories

#Include conf/extra/httpd-userdir.conf

# Real-time info on requests and configuration

#Include conf/extra/httpd-info.conf

# Virtual hosts

#Include conf/extra/httpd-vhosts.conf

# Local access to the Apache HTTP Server Manual

#Include conf/extra/httpd-manual.conf

# Distributed authoring and versioning (WebDAV)

#Include conf/extra/httpd-dav.conf

# Various default settings

#Include conf/extra/httpd-default.conf

# Secure (SSL/TLS) connections

#Include conf/extra/httpd-ssl.conf

#

# Note: The following must must be present to support

#       starting without SSL on platforms with no /dev/random equivalent

#       but a statically compiled-in mod_ssl.

#

SSLRandomSeed startup builtin

SSLRandomSeed connect builtin

NameVirtualHost *:80

    Options Indexes FollowSymLinks    AllowOverride None    Order allow,deny    Allow from all    Options Indexes FollowSymLinks    AllowOverride None    Order allow,deny    Allow from all    Order deny,allow    Deny from all##    Options Indexes FollowSymLinks#        ServerAdmin [email protected]#    #    ProxyPass / ajp://localhost:800Array/#    ProxyPassReverse / ajp://localhost:800Array/#    #    DocumentRoot /java/apache-tomcat-5.5/webapps/ROOT/    DocumentRoot /java/eclipse/workspace/teaching/#    DocumentRoot /www/docs/dummy-host.example.com/    ServerName dummy-host.example.com    ServerAlias www.dummy-host.example.com    ErrorLog logs/dummy-host.example.com-error_log    CustomLog logs/dummy-host.example.com-access_log common#    ProxyPass / balancer://mycluster    #ProxyPassReverse / balancer://mycluster#            #BalancerMember http://127.0.0.1:8080#    ProxyPass ajp://localhost:800Array#    #    JkMount /*.jsp worker1        JkMount /teaching/*.asp worker1   

配置文件里既然已经有了worker2.properties那么就创建一个然后写

worker2.properties的内容如下:

# Define 1 real worker using ajp13

worker.list=worker1

# Set properties for worker1 (ajp13)

worker.worker1.type=ajp13

worker.worker1.host=localhost

worker.worker1.port=800Array

worker.worker1.lbfactor=1

#worker.worker1.cachesize=10

#worker.worker1.cache_timeout=600

worker.worker1.socket_keepalive=1

#worker.worker1.reclycle_timeout=300

然后运行就没有问题了

我用的东东的清单:

httpd-2.2.4.tar.gz

apr-util-1.2.8.tar

arp-1.2.8.tar.gz

apache-tomcat-5.5.23

tomcat-connectors-1.2.22-src.tar.gz

最后一个问题selinux一定要disabled ,切记切记

我只说值钱的

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。