用户操作
[留言]  [发消息]  [加为好友] 
订阅我的博客
XML聚合    FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
eelaix的公告
<img src="" id="PageView"><br> <img src="" id="TotalView" style="display:none"><br> <script> //设置两个计数计的外观样式,取值1-60 var PageCountStyle=48 var TotalCountStyle=48 try{ var sUrl=self.location.href var re=new RegExp("(.+\.net\/)([^\/]+)([^\.]*)","ig") if(re.test(sUrl)) { var blog_id=RegExp.$2; var page_id=blog_id+"__"+RegExp.$3.replace(/\//g,""); blog_id+="__CSDNBLOG" var cUrl="http://nmc2.jy.js.cn/cgi-bin/counter.pl?ln=8&bd=$0;$0;$255&from=1000" document.all.PageView.src=cUrl+"&id="+page_id+"&md=a"+PageCountStyle document.all.TotalView.src=cUrl+"&id="+blog_id+"&md=a"+TotalCountStyle } }catch(e){;} </script> <div align="center"> <a target=blank href=http://wpa.qq.com/msgrd?V=1&Uin=19464204&Site=im.qq.com&Menu=yes><img border="0" SRC=http://wpa.qq.com/pa?p=1:19464204:1 alt="很少用这个"></a> <br> MSN:<a href="maitlto:caigao@hotmail.com" >caigao@hotmail.com</a> </div> <EMBED SRC=http://www.brwin.com/upload/clock/clock4.swf WIDTH=150 HEIGHT=150 wmode=transparent quality=high loop=true menu=false><br> <!-- Blog日历表开始 --> <script language="javascript"> var diarydays="<2004-10-26><2004-10-23><2004-10-18><2004-10-16><2004-10-15><2004-10-14><2004-10-11><2004-09-07><2004-09-06><2004-09-05><2004-09-03><2004-09-02><2004-09-01><2004-08-31><2004-08-30><2004-08-29><2004-08-28><2004-08-27><2004-08-26><2004-08-25><2004-08-24><2004-08-23><2004-08-22><2004-08-21><2004-08-20><2004-08-19><2004-08-18><2004-08-17><2004-08-15><2004-08-13><2004-08-12><2004-08-11><2004-08-10><2004-08-09><2004-08-08><2004-08-06><2004-08-05><2004-08-04><2004-08-03><2004-08-02><2004-08-01><2004-07-31><2004-07-30><2004-07-29><2004-07-27><2004-07-26><2004-07-25><2004-07-22><2004-07-21><2004-07-20><2004-07-19><2004-07-18><2004-07-16><2004-07-15><2004-07-14><2004-07-13><2004-07-12><2004-07-11><2004-07-10><2004-07-09><2004-07-08><2004-07-06><2004-07-05><2004-07-04><2004-07-03><2004-07-02><2004-07-01><2004-06-30><2004-06-27><2004-06-26>"; </script> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <style> .calendarBigBorder { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; text-decoration: none; width: 170; background-color: #FFFFFF; font-size: 9pt;border:1px dotted #999; } .calendarTd { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; color: #000000; background-color: #eeeeee; height: 18px; width: 11%; text-align: center;} .calendarMInput { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; text-decoration: none; background-color: #FFFFFF; height: 15px; border: 1px solid #666666; width: 19px; color: #0099FF;} .calendarYInput { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; color: #0099FF; text-decoration: none; background-color: #FFFFFF; height: 15px; width: 34px; border: 1px solid #666666;} .calendarMonthTitle { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; font-weight: normal; height: 24px; text-align: center; color: #333333; text-decoration: none; background-color: #eeeeee; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-bottom-style: none; border-top-color: #999999; border-right-color: #999999; border-bottom-color: #999999; border-left-color: #999999;} .calendarNow { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; font-weight: bold; color: #000000; background-color: #C0C9D3; height: 18px; text-align: center;} .calendarDaySat { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; color: #333333; text-decoration: none; background-color: #eeeeee; text-align: center; height: 18px; width: 12%;} .calendarDaySun { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; color: #333333; text-decoration: none; background-color: #eeeeee; text-align: center; height: 18px; width: 12%;} .calendarLink { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; font-weight: normal; color: #333333; text-decoration: none; background-color: #E7E7F6; text-align: center; height: 18px;} .categoryTxt { font-family: "Arial", "Helvetica", "sans-serif", "宋体"; font-size: 9pt; line-height: 23px; color: #333333; text-decoration: none;} .categoryTable { border-right-width: 1px; border-bottom-width: 1px; border-right-style: solid; border-bottom-style: solid; border-left-style: none; border-right-color: #000000; border-bottom-color: #000000; border-top-width: 1px; border-top-style: solid; border-top-color: #71b99c;} </style> <SCRIPT LANGUAGE="JavaScript"> var months = new Array("一", "二", "三","四", "五", "六", "七", "八", "九","十", "十一", "十二"); var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,30, 31, 30, 31); var days = new Array("日","一", "二", "三","四", "五", "六"); var classTemp; var calendarHover="calendarHover"; var today=new getToday(); var year=today.year; var month=today.month; var newCal; //得到某月天数 function getDays(month, year) { if (1 == month) return ((0 == year % 4) && (0 != (year % 100))) ||(0 == year % 400) ? 29 : 28; else return daysInMonth[month]; } //得到当天时间信息 function getToday() { this.now = new Date(); this.year = this.now.getFullYear(); this.month = this.now.getMonth(); this.day = this.now.getDate(); } //生成日历 function Calendar() { newCal = new Date(year,month,1); //当前月的第一天 today = new getToday(); var day = -1; //用来判断日历中是否为当天 var startDay = newCal.getDay(); //当月开始时间 var endDay=getDays(newCal.getMonth(), newCal.getFullYear());//当月结束时间 var daily = 0; //用来生成日历中的天数值 if ((today.year == newCal.getFullYear()) &&(today.month == newCal.getMonth())) day = today.day; var caltable = document.all.caltable.tBodies.calendar; //得到日历表格的集合 var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear()); //得到当月天数 //生成日历 for (var intWeek = 0; intWeek < caltable.rows.length;intWeek++) for (var intDay = 0;intDay < caltable.rows[intWeek].cells.length;intDay++) { var cell = caltable.rows[intWeek].cells[intDay]; //得到单元袼 //生成字符串用于判断当天是否有日志 var montemp=(newCal.getMonth()+1)<10?("0"+(newCal.getMonth()+1)):(newCal.getMonth()+1); if ((intDay == startDay) && (0 == daily)){ daily = 1;} var daytemp=daily<10?("0"+daily):(daily); var d="<"+newCal.getFullYear()+"-"+montemp+"-"+daytemp+">"; //选择样式 if(day==daily) cell.className="calendarNow"; else if(diarydays.indexOf(d)!=-1) cell.className="calendarLink"; else if(intDay==6) cell.className = "calendarDaySat"; else if (intDay==0) cell.className ="calendarDaySun"; else cell.className="calendarTd"; //生成值 if ((daily > 0) && (daily <= intDaysInMonth)) { cell.innerText = daily; daily++; } else cell.innerText = ""; } document.all.year.value=year; document.all.month.value=month+1; } function subMonth() { if ((month-1)<0) { month=11; year=year-1; } else { month=month-1; } Calendar(); } function addMonth() { if((month+1)>11) { month=0; year=year+1; } else { month=month+1; } Calendar(); } //得到响应事件 function getDiary() { var mon=(newCal.getMonth()+1)<10?("0"+(newCal.getMonth()+1)):(newCal.getMonth()+1); var day=event.srcElement.innerText<10?("0"+event.srcElement.innerText):(event.srcElement.innerText); var d="<"+newCal.getFullYear()+"-"+mon+"-"+day+">"; if ("TD" == event.srcElement.tagName) if (("" != event.srcElement.innerText)&&(diarydays.indexOf(d)!=-1)) { diary.location="/chensheng913/archive/"+newCal.getFullYear()+"/"+mon+"/"+day+".aspx"; window.location.href = diary.location; } } function setDate() { if (document.all.month.value<1||document.all.month.value>12) { alert("月的有效范围在1-12之间!"); return; } year=Math.ceil(document.all.year.value); month=Math.ceil(document.all.month.value-1); Calendar(); } </SCRIPT> <table border="0" cellpadding="0" cellspacing="1" class="calendarBigBorder" id="caltable" width="200"> <thead> <tr align="center" valign="middle"> <td colspan="7" class="calendarMonthTitle"> <input name="year" type="text" class="calendarYInput" size="3" maxlength="4" onkeydown="if (event.keyCode==13){setDate()}" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" onpaste="this.value=this.value.replace(/[^0-9]/g,'')">年 <input name="month" type="text" class="calendarMInput" size="1" maxlength="2" onkeydown="if (event.keyCode==13){setDate()}" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" onpaste="this.value=this.value.replace(/[^0-9]/g,'')">月 [<a onClick="addMonth()" href="javascript:;">下月</a>] [<a onClick="subMonth()" href="javascript:;">上月</a>]</td> </tr> <tr align="center" valign="middle"> <SCRIPT LANGUAGE="JavaScript"> document.write("<TD class=calendarDaySun id=diary>" + days[0] + "</TD>"); for (var intLoop = 1; intLoop < days.length-1; intLoop++) document.write("<TD class=calendarTd id=diary>" + days[intLoop] + "</TD>"); document.write("<TD class=calendarDaySat id=diary>" + days[intLoop] + "</TD>"); </SCRIPT> </TR> </thead> <TBODY border=1 cellspacing="0" cellpadding="0" ID="calendar" ALIGN=CENTER ONCLICK="getDiary()" onmouseup=document.selection.empty() oncontextmenu="return false" onselectstart="return false" ondragstart="return false" onbeforecopy="return false" oncopy=document.selection.empty() onselect=document.selection.empty()> <SCRIPT LANGUAGE="JavaScript"> for (var intWeeks = 0; intWeeks < 6; intWeeks++) { document.write("<TR style='cursor:hand'>"); for (var intDays = 0; intDays < days.length;intDays++) document.write("<TD class=calendarTd onMouseover='{classTemp=this.className;this.className=calendarHover}' onMouseOut='this.className=classTemp'></TD>"); document.write("</TR>"); } </SCRIPT> </tbody> </table> <script LANGUAGE="JavaScript"> Calendar(); </script> <!-- Blog日历表结束 --> <p><b>天气预报</b></p> <iframe width=157 height=240 frameborder=0 scrolling=NO src="http://appnews.qq.com/cgi-bin/news_qq_search?city=%C9%EE%DB%DA&cll"></iframe></center> <script language="javascript"> document.getElementById("Header1_HeaderTitle").outerHTML="<table><tr><td><img src='http://www.5see.com/demo/gif/shl/taiji/t2.gif' border='0' >&nbsp;</td><td><a href='http://blog.csdn.net/eelaix/' style='color:red;font-size:28pt'> <b>&nbsp;天生我才</b></a></td><td></tr></table>"; function window.onload() { var els=document.getElementById("main").document.getElementsByTagName("DIV"); for(i=0;i<els.length;i++) { if(els[i].className=="postTitle") els[i].innerHTML="<img src='http://blog.csdn.net/images/blog_csdn_net/asklxf/16543/o_article.gif' border='0'>&nbsp;"+els[i].innerHTML; } els=document.getElementById("main").document.getElementsByTagName("H3"); for(i=0;i<els.length;i++) { if(els[i].innerHTML=="公告") els[i].innerHTML="<a href='http://www.wak.cn'>娱乐城</a><img src=http://blog.csdn.net/images/blog_csdn_net/asklxf/16543/o_new.gif>" } } </script>
文章分类
    存档

    原创  使用mod_jk1.2将jboss与apache集成 收藏

    概述:
    本文档说明了如何将jboss与apache集成。经查询,有多种方法将apache与jboss集成,
    经比较,我认为这是一种比较成熟实用的方法。特此记下来。


    英文参考文献地址:
    http://www.jboss.org/wiki/Wiki.jsp?page=UsingMod_jkWithJBoss
    http://www.jboss.org/wiki/Wiki.jsp?page=UsingMod_jk1.2WithJBoss

    文中指出,使用mod_jk1.2是比较好的办法,呵呵,我也这么认同。
    第一步: 安装apache,由于Linux自带了apache,省去吧,我用的是RHEL 3.0
    第二步: 下载并编译mod_jk1.2,地址在:http://jakarta.apache.org/site/sourceindex.cgi
            原文建议下载二进制文件,不过编译源程序很容易地,编译一下吧;
    第三步:配置apache.
    三个文件:
    /*****************************/etc/httpd/conf.d/mod_jk.conf***********************************
    # 因为在/etc/httpd/conf/httpd.conf文件中有一句Include conf.d/*.conf,所以,在httpd.conf中不需要添加任何语句
    # Load mod_jk module
    # Specify the filename of the mod_jk lib
    LoadModule jk_module modules/mod_jk.so
     
    # Where to find workers.properties
    JkWorkersFile conf.d/workers.properties
     
    # Where to put jk logs
    JkLogFile logs/mod_jk.log
     
    # Set the jk log level [debug/error/info]
    JkLogLevel info
     
    # Select the log format
    JkLogStampFormat  "[%a %b %d %H:%M:%S %Y]"
     
    # JkOptions indicates to send SSK KEY SIZE
    JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
     
    # JkRequestLogFormat
    JkRequestLogFormat "%w %V %T"
     
    #JkMount /* node1
    JkMount /*.jsp node1
    JkMount /*.jspx node1
    JkMount /YOURAPPs/* node1
    JkMount /jmx-console/* node1
    ***************************************************************************************/

    /*********************************/etc/httpd/conf.d/workers.properties******************
    # 如果你需要用到负载均衡可以将注释语句去掉
    # Define Node1
    worker.node1.port=8009
    worker.node1.host=localhost
    worker.node1.type=ajp13
    worker.node1.lbfactor=1
    #worker.node1.local_worker=1 (1)
    worker.node1.cachesize=10
    worker.node1.cache_timeout=600
    worker.node1.socket_timeout=300
     
    # Define Node2
    #worker.node2.port=8009
    #worker.node2.host=127.0.0.1
    #worker.node2.type=ajp13
    #worker.node2.lbfactor=1
    #worker.node2.local_worker=1 (1)
    #worker.node2.cachesize=10
     
    # Load-balancing behaviour
    #worker.loadbalancer.type=lb
    #worker.loadbalancer.balanced_workers=node1, node2
    #worker.loadbalancer.sticky_session=1
    #worker.loadbalancer.local_worker_only=1
    worker.list=node1
    #loadbalancer
    ***************************************************************************************/

     


    /****************************${tomcathome}/server.xml**********************************
    //找到以下语句,其中jvmRoot="node1"是新增的
     <Engine name="jboss.web" defaultHost="localhost" jvmRoot="node1">
    ***************************************************************************************/

    另外,本课题外之语是:
    我顺便修改了server.xml的两个位置:
    将<Connector port="8080" address="${jboss.bind.address}"这一行注释起来了,以便关闭8080端口,
    同时在8009端口上添加了一句:URIEncoding="utf-8"以便能正确地处理get请求中的中文字符。

    还有一个技巧是我个修改了/var/www/html/index.jsp文件,以便使我用户访问域名时可以自动定位到适合的页面。
    这个文件将在另一文件中呈现。

    That's ok.

     

    发表于 @ 2004年11月02日 19:04:00 | 评论( loading... ) | 编辑| 举报| 收藏

    旧一篇:servlet之我的理解 | 新一篇:web服务器客户自适应首页--引导你的客户机到合适的页面

    • 发表评论
    • 评论内容:
    •  
    Copyright © eelaix
    Powered by CSDN Blog