Apache2.2與Tomcat7集成方案詳解

原文地址:http://my.oschina.net/u/919173/blog/159206

------------------------------------

首先談一下為什么要集成Apache和tomcat7??

? ? ?Apache是當前使用最為廣泛的WWW服務器軟件,具有相當強大的靜態HTML處理的能力。?Tomcat服務器是一個免費的開放源代碼的Web應用服務器,Tomcat和IIS、Apache等Web服務器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。但是其處理靜態HTML頁面的能力肯定和Apache和IIS這種專業級別的服務器沒法比。因此取兩者之長避兩者之短,將兩者進行進行整合達到有點最大化的效果。

? ? ?1.安裝Apache2.2。 特別說一下這里會提示輸入域名之類的窗口,我這里全部填的localhost.端口的話默認的是80,但是這個端口某些時候可能會被占用,所以我在這里改成了8001(在配置文件httpd.conf里也可以修改,具體修改地方為:Listen 8001 ?修改為指定的端口號)。安裝完成后啟動服務名為Apache2.2的服務后,在網址里輸入:http://localhost:8001,會顯示出一個測試的頁面:It works! (這個頁面放在哪里呢?可以看下C:\Program Files\Apache Software Foundation\Apache2.2這個目錄下是不是有個htdocs文件夾,下面是不是有個index.html.以后我們的頁面就要放在這個里面。當然你也可以自己定義放在哪里,我在這里就改成了自己創建的WebSite文件夾,然后必須要在httpd.conf里指定為你創建的這個文件夾。配置的地方有2處,看我的配置信息:<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/WebSite">)?

? ? ?2.安裝tomcat7。其實沒什么好安裝的,下載下來的都是綠化包,直接解壓就可以使用.測試一下:http://localhost:8080 ?是不是看見一只小貓咪啊?其實我覺得他像一只小老虎。


? ? ?3.下載整合插件mod_jk.so。具體在哪兒下載呢?http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/? 網址老是變化,具體你就在tomcat官網左側有個tomcat connectors哪兒慢慢找吧。下載后解壓找到mod_jk.so放在apache安裝目錄下的modules文件夾下,里面是不是有很多的.so文件呢,沒錯就是這里啦。

? ? ?4.在httpd.conf里配置信息。

? # 設置虛擬主機,定義端口為8001,這個和你在前面配置Listen 8001的端口一定是要一樣的哦
? <VirtualHost 127.0.0.1:8001>
? ? ?ServerName 127.0.0.1
? ? ?#定義服務名稱
? ? ?DocumentRoot "C:/Program Files/Apache Software Foundation/tomcat7/webapps"
? ? ?#定義站點項目所在路徑,把路徑指向 tomcat 中的默認網站目錄
? ? ?DirectoryIndex index.html index.htm index.jsp
? ? ?ErrorLog logs/shsc-error_log.txt
? ? ?CustomLog logs/shsc-access_log.txt common
? ? ?#例子1,讓 Apache 支持對webapps/sun.shop/blog 中頁面傳送
? ? ?JkMount /sun.shop/blog/* config1
? ? ?#例子2,向Apache請求此文件夾內頁面時,系統將轉向用Tomcat解析
? ? ?JkMount /*.jsp config1
? ? ?#例子3,向 Apache 請求jsp頁面時,用 Tomcat 進行解析
? ? ?JkMount /*.do config1
? ? ?#例子4,向 Apache 請求.do 動作時, 用 Tomcat 進行解析
? ? ?JkMount /*.action config1
? ? ?#例子5,向 Apache 請求 .action 動作時, 用 Tomcat 進行解析
?</VirtualHost>
?
?# 允許客戶端訪問此路徑
?<Directory "C:/Program Files/Apache Software Foundation/tomcat7/webapps"> ?
? ? ?Options Indexes FollowSymLinks ?
? ? ?AllowOverride None ?
? ? ?Order allow,deny ?
? ? ?Allow from all ?
?</Directory> ?
?
?LoadModule jk_module modules/mod_jk.so
?# 此處 mod_jk.so 文件為你下載的文件
?JkWorkersFile "C:/Program Files/Apache Software Foundation/tomcat7/conf/workers.properties"
?# 指定tomcat監聽配置文件地址
?JkLogFile "C:/Program Files/Apache Software Foundation/tomcat7/logs/mod_jk2.log"
?# 指定日志存放位置
?JkLogLevel info

? ?5.配置tomcat的conf文件夾下添加workers.properties.具體添加如下內容,自己根據需求修改。

? ?workers.tomcat_home=C:\Program Files\Apache Software Foundation\tomcat7
? ?#讓 mod_jk 模塊感知 Tomcat
? ?workers.java_home=C:\Program Files\Java\jdk1.7.0_09\jre
? ?#讓 mod_jk 模塊感知 jre
? ?ps=\
? ?#指定文件路徑分割符
? ?worker.list=config1
? ?worker.config1.port=8009
? #工作端口,此端口應該與server.xml中Connector元素的 AJP/1.3 協議所使用的端口相匹配
? worker.config1.host=localhost
? #Tomcat服務器的地址
? worker.config1.type=ajp13
? #類型
? worker.config1.lbfactor=1
? #負載平衡因數

? ?6.測試一下啦。啟動apache和tomcat然后在瀏覽器中輸入:http://localhost:8001,這是你會發現我們又看到了那只小老虎(注意我們輸入的地址是在訪問apache不是在訪問tomcat,訪問tomcat的地址是:http://localhost:8080)。但是我們的apache的htdocs文件夾下沒有這個小老虎的頁面呀,這是因為我們集成成功啦。我們在訪問.jsp頁面的時候,apache會根據請求然后來判斷請求頁面的類型,當發現是.jsp頁面的時候,mod_jk插件就會將請求轉達給了tomcat,這時候tomcat會負責處理請求,所以我們會看到了webapps下的那只小老虎。


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539536.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539536.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539536.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

cocos 制作動態生成內容的列表_零代碼工具,讓你在線輕松制作交互內容!

在工作中設計師不會寫代碼&#xff0c;懂代碼的不會設計&#xff0c;2種不同工作互掐的情況屢見不鮮&#xff0c;那我們如何把這2項工作一并融合貫通呢&#xff1f;對于不懂代碼的職場“小白”&#xff0c;我們可以利用一些零代碼工具來完成。今天小編介紹幾款在線開發設計工具…

php怎樣數據緩存文件,php數據緩存到文件類設計

// 自定義緩存類class Cache_Filesystem {// 緩存寫保存function set ($key, $data, $ttl) {//打開文件為讀/寫模式$h fopen($this->get_filename($key), ‘a‘);if (!$h) throw new Exception("Could not write to cache");flock($h, LOCK_EX); //寫鎖定&#x…

jsp放在web-inf下的注意事項

原文&#xff1a;http://blog.csdn.net/whatlookingfor/article/details/38381881 ------------------------------------------------- web-inf目錄是不對外開放的&#xff0c;外部沒辦法直接訪問到。所有只能通過映射來訪問&#xff0c;比如映射為一個action或者servlet通過…

php打印布爾型,PHP數據類型之布爾型的介紹_PHP

布爾類型是PHP中 最簡單的類型。它的值可以為 TRUE 或 FALSE。如&#xff1a;$foofalse;$foo1true;echo "為假時輸出值為:".$foo; //沒有輸出值echo "為真時輸出值為:".$foo1; //輸出1這里主要的細節&#xff1a;當轉換為 boolean 時&#xff0c;以下值被認…

oracle 如何終止存儲過程的運行

0.查詢正在執行的存儲過程&#xff1a; select * from v$db_object_cache where locks > 0 and pins > 0 and typePROCEDURE;1. 在V$ACCESS視圖中找到要停止進程的SID: 舉例&#xff1a;存儲過程名&#xff1a;CRH_ENTRY SELECT t.* FROM V$ACCESS t WHERE t.objectCRH_…

python install zabbix.4.0

1.安裝 MySQLdb 模塊; #!/bin/bash #this is rpm python Environment depends on function depends_rpm(){ yum clean all yum -y install gcc* python-devel python-pip mariadb mariadb-devel mariadb-server if [ $? -eq 0 ]thenpip install MySQL-python1.2.5 elsee…

asp.net 獲取全部在線用戶_Qamp;A | 在線考試問卷答疑

01.如何批量導入試題&#xff1f;如果您已經在word或者excel中準備好了考試文檔&#xff0c;通過批量導入試題的方式&#xff0c;可以讓考試問卷的制作更加方便快捷。詳細了解批量導入考試的文本格式&#xff1a;【點擊此處】02.如何進行考試隨機抽題&#xff1f;老師事先建立題…

PHP 框架 模塊化,Laravel 的模塊化開發框架 Notadd RC1

本文我們要和大家分享 Laravel 的模塊化開發框架 Notadd RC1 的介紹&#xff0c;它的優點是修復了首頁編輯模式下滾動的BUG (Eleven)&#xff0c;修復了后臺菜單管理修改后不跳轉的BUG (ganlanshu0211)&#xff0c;修復后臺 ESLint 的 Camelcase 的錯誤 (狒狒)&#xff0c;暫時…

spring mvc 工作流程

1A&#xff09;客戶端發出http請求&#xff0c;只要請求形式符合web.xml 文件中配置的*.action的話&#xff0c;就由DispatcherServlet 來處理。 1B&#xff09;DispatcherServlet再將http請求委托給映射器 的對象來將http請求交給對應的Action來處理 2&#xff0…

9-2 鏈表

package gather;import java.util.LinkedList; import java.util.List; import java.util.ListIterator;public class TestFour {public static void main(String[] args) {// TODO Auto-generated method stub/*** 1、通過整數遍歷元素時&#xff0c;不要使用鏈表結構&#xf…

excel切片器_如何在Excel表格中使用切片器

切片器除了在數據透視表中會使用到&#xff0c;在Excel的表格功能下面&#xff0c;也是可以進行使用的。下面就來介紹一下如何使用切片器這個工具。創建和使用切片器1.首先就是要創建一個表格。選中目標區域&#xff0c;使用快捷鍵CtrlT&#xff0c;創建一個表格。2.點擊“插入…

分階段付款 學php,項目整理-支付寶的支付問題

支付寶作為一個被廣泛使用的支付工具&#xff0c;在是用的時候可以被廣泛使用。可以使用demo提取(由于當時開發時SDK下載路徑無法下載&#xff0c;直接從DEMO中篩選了需要部分)------------------我是開始開發思路的分割線--------------------------本次主要是APP支付的流程。…

使用sqlldr導入文本數據到oracle

1.sqlldr介紹 用法: SQLLDR keywordvalue [,keywordvalue,...]有效的關鍵字:userid -- ORACLE 用戶名/口令 control -- 控制文件名 log -- 日志文件名 bad -- 錯誤文件名 data -- 數據文件名 dis…

Mac os區別_SN及Mac地址燒錄

platform:RK3399 OS:Android 7.1 參考: 1.比特人生 https://blog.csdn.net/ielife/article/details/86719313 2.KrisFei https://blog.csdn.net/kris_fei/article/details/79447343?ops_request_misc%257B%2522request%255Fid%2522%253A%2522158883304619726869022990%2522%25…

linux 查看數據庫和表 mysql 命令

2019獨角獸企業重金招聘Python工程師標準>>> 查看是否有安裝數據庫 &#xff1a;rpm -qa|grep -i mysql 如圖已安裝&#xff1a; 未安裝&#xff1a; 查看MySQL版本的四種方法 1 在終端下執行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看…

php mvc 邏輯層在哪,mvc的業務邏輯應該放哪里?

背景: 基于laravel的后臺管理系統&#xff0c;CURD密集型業務問題&#xff1a;當直接在控制器方法中調用orm處理業務邏輯時&#xff0c;代碼復用性差&#xff0c;控制器層很肥嘗試解決&#xff11;&#xff1a;新建一個model層&#xff0c;將原先在控制器中的處理邏輯移到mode…

servlet/filter/listener/interceptor區別與聯系

下面從幾個方面闡述一下題目中四個概念的區別與聯系&#xff1a; 1、概念 2、生命周期 3、職責 4、執行過程 一、概念&#xff1a; 1、servlet&#xff1a;servlet是一種運行服務器端的Java應用程序&#xff0c;具有獨立于平臺和協議的特性&#xff0c;并且可以動態的生成web頁…

電腦系統哪個最好用_袪痘袪痘印哪個產品最好 祛痘印最好用的產品十大推薦...

原標題&#xff1a;袪痘袪痘印哪個產品最好 祛痘印最好用的產品十大推薦痘痘下去了&#xff0c;痘印卻頑固不化。有些痘印如果不及時修復&#xff0c;會留下疤痕和坑。我們真的不敢去想他們。所以有痘印痘印的時候一定要及時使用護膚品&#xff0c;不要在臉上留下什么遺憾&…

python中集合符號,Python 集合符號

Android SDK Manager 無法下載更新&#xff0c;或者更新速度超慢&#xff0c;或者待安裝包列表不顯示解決方法: 轉自 http://www.cnblogs.com/tc310/archive/2012/12/21/2828450.html http://jingyan.baidu.com/artic ...AJAX學習AJAX即“Asynchronous Javascript And XML”(異…