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. admin@your-domain.com
#
ServerAdmin you@example.com
#
# 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
webmaster@dummy-host.example.com# #
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 ,切记切记
我只说值钱的