dell 2950 服务器为64位,8G,双CPU双核
apache 2.2.11
jdk6u12
tomcat 6.0.16
mod_jk 1.2.27
tomcat native 1.1.16
第一步,apache:
解压apache源码,进入srclib/apr,安装之:
./configure --prefix=/opt/app/apr make sudo make install
进入srclib/apr-util
./configure --prefix=/opt/app/apr-util --with-apr=/opt/app/apr make sudo make install
进入apache源码根目录:
./configure --libdir=/usr/lib64 --enable-nonportable-atomics=yes --disable-actions --disable-asis --disable-auth-basic --disable-authn-default --disable-authn-file --disable-authz-default --disable-authz-groupfile --disable-authz-user --disable-autoindex --disable-cgi --disable-cgid --disable-env --disable-filter --disable-imagemap --disable-include --disable-isapi --disable-negotiation --disable-nw_ssl --disable-userdir --enable-modules="so" --enable-mods-shared="deflate status cache mem-cache disk-cache rewrite headers setenvif proxy proxy_ajp proxy_balancer proxy_http" --with-apr=/opt/app/apr --with-apr-util=/opt/app/apr-util --prefix=/opt/app/apache-boss --with-mpm=worker make sudo make install
如果在 configure时提示deflate相关的错误,则是没有安装zlib-devel,安装之.
另一种编译参数
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" ./configure --prefix=/opt/apache2 --disable-authn-file --disable-authn-default --disable-authz-host --disable-authz-groupfile --disable-authz-user --disable-authz-default --disable-auth-basic --disable-include --disable-filter --disable-charset-lite --disable-log-config --disable-env --disable-setenvif --disable-mime --disable-status --disable-autoindex --disable-asis --disable-cgid --disable-cgi --disable-negotiation --disable-dir --disable-actions --disable-userdir --disable-alias --enable-suexec --enable-http --enable-suexec --enable-proxy --enable-proxy-http --enable-proxy-balancer --enable-static-support --enable-static-htpasswd --enable-static-htdigest --enable-static-rotatelogs --enable-static-logresolve --enable-static-htdbm --enable-static-ab --enable-static-checkgid --with-mpm=prefork
第二步:mod_jk:
进入mod_jk源码tomcat-connectors-1.2.27-src/native:
./configure --with-apxs=/opt/app/apache-boss/bin/apxs make sudo make install
第三步:jdk
在/opt/app下面运行jdk的二进制,然后:
sudo ln -s /opt/app/jdk1.6.0_12 /opt/app/java
第四步:tomcat
cp apache-tomcat-6.0.16 /opt/app/tomcat-boss-a cp apache-tomcat-6.0.16 /opt/app/tomcat-boss-a
第五步:修改apache配置文件
sudo vim /opt/app/apache-boss-2.2.11/conf/httpd.conf
ServerRoot "/opt/app/apache-boss" Listen 80 # #LoadModule cache_module modules/mod_cache.so #LoadModule disk_cache_module modules/mod_disk_cache.so #LoadModule mem_cache_module modules/mod_mem_cache.so LoadModule deflate_module modules/mod_deflate.so LoadModule headers_module modules/mod_headers.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule jk_module modules/mod_jk.so #LoadModule status_module modules/mod_status.so <IfModule !mpm_netware_module> <IfModule !mpm_winnt_module> User daemon Group daemon </IfModule> </IfModule> DocumentRoot "/opt/webapps/boss" <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> <Directory "/opt/webapps/boss"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> <IfModule dir_module> DirectoryIndex index.html index.jsp </IfModule> <FilesMatch "^\.ht"> Order allow,deny Deny from all Satisfy All </FilesMatch> ErrorLog "logs/error_log" LogLevel warn <IfModule log_config_module> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common <IfModule logio_module> # 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 </IfModule> CustomLog "logs/access_log" combined </IfModule> <IfModule alias_module> # ScriptAlias /cgi-bin/ "/opt/app/apache-boss/cgi-bin/" </IfModule> <IfModule cgid_module> #Scriptsock logs/cgisock </IfModule> <Directory "/opt/app/apache-boss/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> # DefaultType text/plain <IfModule mime_module> TypesConfig conf/mime.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 .gzjs # # 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 </IfModule> # #MIMEMagicFile conf/magic # # Customizable error responses come in three flavors: # 1) plain text 2) local redirects 3) external redirects # # Some examples: ErrorDocument 503 /503.htm ErrorDocument 404 /404.htm # #EnableMMAP off EnableSendfile on # 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. # <IfModule ssl_module> SSLRandomSeed startup builtin SSLRandomSeed connect builtin </IfModule> JkWorkersFile conf/workers.properties JkShmFile conf/mod_jk_boss.shm JkLogFile /var/log/mod_jk_boss.log JkLogLevel error JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " JkOptions +RejectUnsafeURI #<Location /> #SetOutputFilter DEFLATE # Don't compress images #SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary # Make sure proxies don't deliver the wrong content #Header append Vary User-Agent env=!dont-vary #</Location> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript text/css #ExtendedStatus On #<location /server-status> # SetHandler server-status # Order Deny,Allow # Deny from all # Allow from all #</location>
更改/opt/app/apache-boss/conf/extra/httpd-default.conf
Timeout 60 KeepAlive On MaxKeepAliveRequests 500 KeepAliveTimeout 1 UseCanonicalName Off AccessFileName .htaccess ServerTokens Prod ServerSignature Off HostnameLookups Off
更改/opt/app/apache-boss/conf/extra/httpd-mpm.conf
<IfModule mpm_worker_module> ServerLimit 64 ThreadLimit 150 StartServers 5 MaxClients 1500 MinSpareThreads 450 MaxSpareThreads 800 ThreadsPerChild 150 MaxRequestsPerChild 1000000 </IfModule>
更改/opt/app/apace-boss/conf/extra/httpd-vhosts.conf
根据自己的情况更改,注意要有这一句
JkMountFile conf/boss-uriworkermap.properties