posts - 37,  comments - 53,  trackbacks - 0
 
apache版本2.2
自带mod_deflate.so和mod_headers.so
如果没有这两个模块,那么你就需要手工编译并load这两个模块。
我是在虚拟主机下加入一下配置即可
<Location "/">
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary
</Location>

记住,以上配置,需要放到<Directory></Directory>之后,apache官方网站这么说的:)

posted @ 2009-08-26 09:17 雪地孤鸿 阅读(176) | 评论 (0)编辑 收藏
今天发现linux服务器的/目录磁盘使用率为100%,操作如下
主要通过du -sh查找占用磁盘较多的目录
1.清除/var/log下的日志文件
2.清除/var/spool/mail下占用磁盘较多的邮件目录(我的服务上主要是root用户的邮件比较多导致的)

posted @ 2009-07-02 17:25 雪地孤鸿 阅读(4342) | 评论 (0)编辑 收藏

但是scim中文输入不了, 上网找解决方案,最后成功的方法:

sudo apt-get install scim-qtimm 安装scim的qt模块

  • sudo gedit /usr/bin/opera 在文件中加入export QT_IM_MODULE="scim"

启动opera,问题解决。


环境:

ubuntu9.0.4

opera9.6

测试成功

posted @ 2009-05-08 08:59 雪地孤鸿 阅读(270) | 评论 (0)编辑 收藏

鸣谢:http://www.phpma.com/linux/20070908/392.html

Apache日志分析工具--AWStats6.9安装使用
1、事先安装好Apache

2、安装awstats的命令(将awstats安装在/opt/awstats目录)
mkdir -p /var/lib/awstats
cd /opt
wget http://www.awstats.cn/files/awstats-6.6.tar.gz
tar zxvf awstats-6.6.tar.gz
mv awstats-6.6 awstats
cd awstats/tools/
perl awstats_configure.pl

3、Perl脚本awstats_configure.pl安装过程(以下内容引用AWStats英文使用说明)

(1)
-----> Running OS detected: Linux, BSD or Unix
Warning: AWStats standard directory on Linux OS is '/usr/local/awstats'.
If you want to use standard directory, you should first move all content
of AWStats distribution from current directory:
/opt/awstats
to standard directory:
/usr/local/awstats
And then, run configure.pl from this location.
Do you want to continue setup from this NON standard directory [yN] ?

这时选择y回车。

(2)
-----> Check for web server install

Enter full config file path of your Web server.
Example: /etc/httpd/httpd.conf
Example: /usr/local/apache2/conf/httpd.conf
Example: c:\Program files\apache group\apache\conf\httpd.conf
Config file path ('none' to skip web server setup):

第一次使用请输入Apache的httpd.conf路径,例如/opt/sina/apache/conf/httpd.conf
以后如果再使用perl awstats_configure.pl生成配置文件,则可以输入none跳过。

(3)
-----> Check and complete web server config file '/opt/sina/apache/conf/httpd.conf'
Warning: You Apache config file contains directives to write 'common' log files
This means that some features can't work (os, browsers and keywords detection).
Do you want me to setup Apache to write 'combined' log files [y/N] ?

选择y,将日志记录方式由CustomLog /yourlogpath/yourlogfile common改为更详细的CustomLog /yourlogpath/yourlogfile combined

(4)
-----> Update model config file '/opt/awstats/wwwroot/cgi-bin/awstats.model.conf'
 File awstats.model.conf updated.

-----> Need to create a new config file ?
Do you want me to build a new AWStats config/profile
file (required if first install) [y/N] ?

创建一个新的配置文件,选择y

(5)
-----> Define config file name to create
What is the name of your web site or profile analysis ?
Example: www.mysite.com
Example: demo
Your web site, virtual server or profile name:
>

输入站点名称,例如sina

(6)
-----> Define config file path
In which directory do you plan to store your config file(s) ?
Default: /etc/awstats
Directory path to store config file(s) (Enter for default):
>

输入AWStats配置文件存放路径,一般直接回车则使用默认路径/etc/awstats

(7)
-----> Add update process inside a scheduler
Sorry, configure.pl does not support automatic add to cron yet.
You can do it manually by adding the following command to your cron:
/opt/awstats/wwwroot/cgi-bin/awstats.pl -update -config=sina
Or if you have several config files and prefer having only one command:
/opt/awstats/tools/awstats_updateall.pl now
Press ENTER to continue...

按回车键继续

(8)
A SIMPLE config file has been created: /opt/awstats/etc/awstats.sina.conf
You should have a look inside to check and change manually main parameters.
You can then manually update your statistics for 'sina' with command:
> perl awstats.pl -update -config=sina
You can also read your statistics for 'sina' with URL:
> http://localhost/awstats/

Press ENTER to finish...

按回车键结束


4、修改awstats.sina.conf配置
vi /etc/awstats/awstats.sina.conf

按?,在之后输入要搜索的内容LogFile="
然后按Ins键,找到LogFile="/var/log/httpd/access_log"
改为要分析的Apache日志路径与文件名。

(1)多日志合并分析(例:新浪播客其中两台服务器2月6日的日志30.0206.vblog.log与31.0206.vblog.log)
LogFile="/opt/awstats/tools/logresolvemerge.pl /var/apachelogs/30.0206.vblog.log /var/apachelogs/31.0206.vblog.log|"

LogFile="/opt/awstats/tools/logresolvemerge.pl /var/apachelogs/*.0206.vblog.log|"

(2)分析使用gzip压缩过的日志文件
LogFile="gzip -d </var/log/apache/access.log.gz|"


5、更新分析报告
perl /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=sina -update


在实践过程中,确实有该问题,只要删除掉历史日志记录即可
如果出现以下错误提示,很大可能是Apache的Log文件中存在以前CustomLog /yourlogpath/yourlogfile common生成的日志,删除掉这些行的日志即可:
This means each line in your web server log file need to have "combined log format" like this:
111.22.33.44 - - [10/Jan/2001:02:14:14 +0200] "GET / HTTP/1.1" 200 1234 "http://www.fromserver.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"

6、查看分析报告
http://localhost/awstats/awstats.pl?config=sina

这里的sina对应/etc/awstats/awstats.sina.conf中的sina

7.awstats自动生成日志分析报告

需要root用户权限,或者可以操作crontab -e命令的用户权限:

(1)键入:crontab -e

(2)输入以下系统定时任务:

0 5 * * *  /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=www.google.com -update

每天凌晨5点执行日志分析报告,opt/awstats/wwwroot/cgi-bin/awstats.pl为awstats安装目录下的perl命令,www.goolge.com为你安装awstats时指定的网站域名。关于crontab命令的用法,可以google一下。

8.awstats基础安全设置

(1)linux系统中必须存在用户,如果不存在可以按以下方式操作

groupadd awsuser     #增加awstats用户组

useradd -g awsuser awstats #增加awstats用户,并归属awsuser用户组

(2)在apache安装目录下新建文件夹

mkdir passwd

(3)运行如下代码产生用户名为awstats用户及其密码

opt/apache/bin/htpasswd -c /opt/apache/passwd/passwords awstats

键入密码和验证密码即可

(4)配置httpd.conf

<Directory "/opt/awstats-6.9/wwwroot"> Options None AllowOverride None Order allow,deny Allow from all AuthType Basic AuthName "Restricted Files" AuthUserFile /usr/local/apache2/password/passwords Require user awsspring </Directory>




附:
(2)测试环境:在DELL PowerEdge 1950/2950 服务器+red hat as 4.6/5.0 as Linux操作系统+Apache 2.2.11下测试通过。

posted @ 2009-04-08 16:54 雪地孤鸿 阅读(1139) | 评论 (0)编辑 收藏
1 . WDG HTML Validator 一个很好的工具,能找出网站语法错误的地方,并标注出来,也可选择对网站上单独的每一页进行单页分析。( 强烈推荐

2 . W3C Markup Validation Service 对 HTML 和 XHTML 都能进行代码测试,自称是互联网络上第一个(也是使用者最多的)的 HTML 验证工具。

3 . W3C CSS Validation Service 用于验证 css 源代码,能够标注出不好的 css 代码设计。例如:“Same colors for color and background-color in two contexts”。

4 . RUWF XML Syntax Checker 用于查找 XML 文件的错误。

5 . W3C Feed Validation Service 用于查找 Atom 和 RSS feed 中的错误语法。( 这个我经常用到

6 . W3C Link Checker 用于搜寻查明你网站内的所有链接里是否有断链。( 强烈推荐

7 . Juicy Studio Link Analyser 测试网站内的链接的 URL 是否存在死链,与 W3C Link Checker 很类似。

网站的使用性

我们常常看到网站设计者把重点放在怎网站的吸引力上,而完全不考虑会不会影响来访者的使用,一个浏览难度很大的网页是注定要失败,要让你的来访者方便的得到他要的信息(从而成为重复访客),你的网站应当遵循 WCAG section 508 易用性规则。

8 . Watchfire WebXACT 所有严谨的设计师和开发者都必须使用的工具,它会生成一个非常详尽的报告书,包括:网站质量,易用性和隐私等。( 强烈推荐

9 . ATRC Web Accessibility Checker 测试网站的 WCAG 2.0 Level2 兼容性,它会生成一份报告,提出一系列建议,如:如何提升页头,链接,数据,图表和文字的访问速度。

10 . WAVE 3.0 Web Accessibility Tool 高度可定制的工具,它采用了图形化模型展示网站兼容性问题( WCAG 1.0 and section 508 )。( 强烈推荐

11 . TAW Web Accessibility Test 测试网页是否存在冲突( WCAG 1.0 兼容性 ),通过图形模式生成一份依据 wcag 优先模式为基础的网站修改建议。

12 . HiSoftware CynthiaSays portal 采用了非常严格的规则来测试网页( 根据 section 508 和 WCAG 1.0 规则 ),生成的报告也极为详细( 详细到很难看懂 )。

13 . HERA Accessibility testing with Style 使用一种极为复杂但容易理解方式指出网页的 wcag1.0 兼容性问题。

14 . Juicy Studio CSS Analyser 进行了色彩对比测试,以确保你的网站的色调会符合 WCAG 1.0 的要求。

15 . Juiciy Studio Readability Test 分析你网站上的文字是否有语法错误或拼写错误等问题,容易让人理解不( 根据 the Flesch Reading Ease 和 Flesch-Kincaid grade level algorithms 规则 )。( 适合英文网站使用 )

网站的速度

打开你的网站的速度快慢,是来访者会不会再次访问网站的关键因素,在一般情况下,一个网络不是很快的来访者是不愿意访问一个充满着图片、flash 动画、多媒体文件的网站。为了使你的网站覆盖人群的范围最大化,你必须优化你的网站,使它的打开速度尽可能的快。

16 . Web Page Analyzer from Website Optimization 一个很好的工具,它在分析完一个网页后,会为减少加载时间提出优化建议,着重优化物体的数目,图片和网站的总体大小。( 强烈推荐

17 . WebSitePulse Test Tools 有一系列的工具来确定网站的加载速度和主机信息。

18 . Internet Supervision Url Check 从世界各地不同的服务器来测试你的网站的加载时间,用于确定是不是各地的来访者都能顺利快速的打开你得网站。

浏览器模拟工具

这是一个普遍的问题,因为现在有着很多的操作系统和浏览器,你得网站必须得兼容它们,但这绝不是一件容易的事。通过下列工具,你可以了解你得网站在各种浏览器上的显示效果。

19 . Browsershots能给出你的网站在不同浏览器下显示效果的截图,包括:Firefox 和 Internet Explorer ( Windows)、Firefox 和 Safari ( Mac OS X )、Iceweasal 和 Konqueror ( Linux ),但是结果要在1 - 3 小时后才能出来。

20 . IE NetRenderer 实时生成你的网站在 Internet Explorer 5.5 、6.0 和 7.0 下的截图。

21 . MobiReady Report 分析使用手机访问网页的兼容性问题,会生成一份详细的报告,并提供了在两种不同类型的手机浏览器上你得网站可能显示的样子。

搜索引擎优化 (SEO)

一个网站,如果对搜索引擎有着比较好的友好度,一定会比较有竞争力。

22 . UrlTrends 会显示网站的访客是如何通过搜索引擎来到你的网站,还有各个流量是多少。这些数据是包括 Google, Yahoo, MSN, Alexa, AlltheWeb, AltaVista 和其他一些网站。( 强烈推荐

23 . iWEBTOOL Backlink Checker 一个很好的工具,它能找出有什么站点链接到你的站点,那些站点是什么类型的站点。

24 . iWEBTOOL Multi-Rank Checker 显示你网站的 Alexa 和 Google PageRank 数值。

25 . Microsoft adCenter Labs: Advertising and Keyword Research Tools 一个极好的工具,用于分析和预测你网站的来访者和市场。( 强烈推荐

26 . Domain Tools Whois lookup 一个 WHOIS 网络工具。

27 . SEO-Browser 可以让你看到在搜索引擎眼里一样的网站( 去掉所有的”美丽”配件 )。

28 . SEO Workers SEO Analysis Tool 非常有用的工具,分析了网站上的各种分类特征,包括 meta 标签、关键字密度及加载时间。( 强烈推荐

29 . Seekport Seekbot 可以分析网站的数据和内容,以得出搜索引擎会如何有效的解释分析的网站。

30 . SEO Chat SEO Tools 用以分析网站 Google adsense 盈利潜力,关键字密度,Meta tag 等等……

31 . Marketleap Search Engine Marketing Tools 用来分析网页,让你知道你的网站检索、设定的关键字好不好。

原文:avivadirectory.com
译者:peterzsk
译文原地址:http://zsk.akaka.com.cn/2007/06/31-free-tests-online/
采用CC创作共用协议,转载可保留以上信息并<署名、非商业和保持一致>。

posted @ 2009-02-18 15:57 雪地孤鸿 阅读(255) | 评论 (0)编辑 收藏
opencrx的大名,我就不介绍了,请参考www.opencrx.com(官方网站)或www.opencrx.com.cn(中文网站),我使用的是opencrx2.1,关于opencrx的安装过程,无论是windows还是linux的安装过程也不需要多说了,官方网站有很好的安装说明文档,图文并茂,很是生动,几乎太会不会安装的了:),但是在启动的过程中,出现了一点小插曲,让我折腾了将近2个小时。下面就详细说明一下:
一、在windows下安装完成openmdxTomcatLwc-2.1.0和opencrx2.1.0之后,桌面上会出现五个快捷方式,双击那个都不会正常的启动opencrx-server  的?关键是hsql会出现错误,他们需要组合使用才是有效的:),先启动Start Services for Tomcat+LWC 2.1.0 (8080)(双击该图标即可)启动openmdx service服务;然后在双击openCRX Server HSQLDB Console (9001)图标,启动hsql内存数据库,接着双击Start Tomcat+LWC 2.1.0 (8080)图标,启动opencrx-server服务,到此为止,如果没有看到任何异常,那就恭喜你了,服务完全启动成功了!!!!还有两个图标,一个是Login Tomcat+LWC 2.1.0 (8080),这个就是访问opencrx-server的登录页面的快捷方式而已,你在ie中输入地址也是可以的,另外一个就Stop Tomcat+LWC 2.1.0 (8080),停止所有的web服务(openmdx-service和opencrx-server),最后的hsql服务需要手工停止。
   启动时需要组合拳,但是停止确实一键搞定,太让人郁闷了:(

二、在Linux下,安装过程可能并不向官方文档描述的那样,我们大部分所使用的linux应该是不太会支持图形界面的,但是官方的安装文档给出的是有图形界面的,和window下极其相似,不过也没有关系,只要是使用过linux(入门级即可)的应该都可以根据提示完成安装。不过在官方文档的最后,在启动opencrx-server的描述中,给出了一句极具误导性的话“Start Tomcat to start the openCRX Server”,也有可能是偶的e文不好的原因,反正我是理解为启动tomcat即可了。后经验证,其实是需要通过"/installdir/opencrx2.1/bin/control.sh START"命令来启动才可以。注意control.sh的参数“START”.linux下面的启动过程比windows下稍微有好一点:)


好了,今天基本就这样了,后面在慢慢研究opencrx吧,希望有兴趣的朋友一起:)

posted @ 2008-07-26 17:00 雪地孤鸿 阅读(4310) | 评论 (2)编辑 收藏
关于JForum论坛的基本情况就不在此介绍了,官方网址:www.jforum.net.jforum论坛系统的安装也很简单,按照官方文档,或者google一下,基本都可以搞定,在此就不在介绍了。大概描述一下我使用jforum的情况:
1.应用服务器:weblogic8.1
2.数据库:oracle10g
3.已有一个电子商务网站,需要和jforum进行简单的集成,提供sso(单点登录的功能)。
4.说明:已有的电子商务网站域名:http://www.123.com jforum域名:www.123.com/forum,电子商务网站和jfroum在统一台服务器和同一应用服务器下,如果分开可能会存在session或cookie访问的问题。
5.JForum版本:2.1.8
下面简要的介绍一下使用cookie进行jforum和电子商务网站的sso集成的过程:
(1)实现net.jforum.sso接口
public class CookieUserSSO implements SSO {
    static final Logger  logger       = Logger.getLogger(CookieUserSSO.class.getName());

    public String authenticateUser(RequestContext request) {
        // login cookie set by my web LOGIN application
        Cookie cookieNameUser = ControllerUtils.getCookie(SystemGlobals
                .getValue(ConfigKeys.COOKIE_NAME_USER));
        String username = null;

        if (cookieNameUser != null) {
            username = cookieNameUser.getValue();
        }
        logger.info("cookie username="+username);
        System.out.println("cookie username="+username);
        return username; // return username for jforum
        // jforum will use this name to regist database or set in HttpSession
    }

    public boolean isSessionValid(UserSession userSession,
            RequestContext request) {
        Cookie cookieNameUser = ControllerUtils.getCookie(SystemGlobals
                .getValue(ConfigKeys.COOKIE_NAME_USER)); // user cookie
        String remoteUser = null;

        if (cookieNameUser != null) {
            remoteUser = cookieNameUser.getValue(); // jforum username
        }

        if (remoteUser == null
                && userSession.getUserId() != SystemGlobals
                        .getIntValue(ConfigKeys.ANONYMOUS_USER_ID)) {
            // user has since logged out
            return false;
        } else if (remoteUser != null
                && userSession.getUserId() == SystemGlobals
                        .getIntValue(ConfigKeys.ANONYMOUS_USER_ID)) {
            // anonymous user has logged in
            return false;
        } else if (remoteUser != null
                && !remoteUser.equals(userSession.getUsername())) {
            // not the same user (cookie and session)
            return false;
        }       
        return true; // myapp user and forum user the same. valid user.
    }

}
(2)修改SystemGlobals.properties中的配置:
    修改
SystemGlobals.properties文件中的一下属性的内容:
    authentication.type = sso
    sso.implementation = net.jforum.sso.CookieUserSSO
    sso.redirect = http://www.123.com/login.jsp //可根据实际的登录页面地址进行修改

    cookie.name.user = 123UserInfo //电子商务网站中保存的cookie名称,可根据实际情况修改

(3)修改web应用中的登录和注销部分的逻辑:
    登录部分加入以下代码:
   
...
    Cookie cookie = new Cookie("springTourUserInfo", sname);
     cookie.setMaxAge(-1);
     cookie.setPath("/");//cookie只在同一应用服务器有效
     response.addCookie(cookie);

   ...
    注销部分加入以下代码:
    ......
      Cookie cookie = new Cookie("springTourUserInfo", "");
      cookie.setMaxAge(0); // delete the cookie.
      cookie.setPath("/");
      response.addCookie(cookie);

    ......
(4)在电子商务网站增加论坛的链接:
    <a href="/forum">论坛</a>

基本配置完整,测试通过,如有问题,欢迎交流!

感谢网友提供的资料:
http://www.lifevv.com/java/doc/20080305224358885.html?page=0
http://www.99inf.net/SoftwareDev/Java/54230.htm(作者:王保政)


   

posted @ 2008-06-26 16:54 雪地孤鸿 阅读(4021) | 评论 (3)编辑 收藏
假设有webapp1, webapp2, cas server,webapp1, webapp2均受cas server保护
首先,我在这里简单解释一下:
第1种不能logout的情况:
1)登录了WebApp1,redirect到caserver
casserver认证后,再redirect到webapp1,ok!
2)http方式 lougout casserver1,即http://yale_casserver:8080/cas/lougout
显示logout成功
3)访问webapp2,还能访问!
这是非常正常的一种情况,因为你不通过https来注销,casserver怎么"杀"掉
它通过https发给你的TGC Cookie?

第2种不能logout的情况:
1)登录了WebApp1,redirect到caserver
casserver认证后,再redirect到webapp1,ok!
2)https方式 lougout casserver1,即https://yale_casserver:8443/cas/lougout
显示logout成功
3)访问webapp1,还能访问!访问webapp2,不能访问,重定向到casserver要求登录!
这也是非常正常的一种情况,因为你已经能够访问,你继续可以继续访问,
CASLogout不能阻止你访问webapp1,它只能阻止你访问webapp2,因为你已经
被允许访问webapp1,而webapp2则还没有,如果你在(1)的时候,顺带也访问
webapp2,那么你的注销将毫无作用了,CAS无法阻止你访问这两个webapp,
因为你有Service Ticket。

如果你对此费解,那时因为你已为Logout就是退出系统,那我只能表示遗憾,
因为CAS Logout的作用不是这样,它的作用是阻止你继续通过TGC(它简单地
清楚了IE的TGC Cookie)来获取ST,阻止你获取通向其他web应用的Ticket。

所以,用完webapp1的时候,注销,然后再关闭掉IE就彻底Logout了。
 

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1503551
posted @ 2008-03-28 16:16 雪地孤鸿 阅读(873) | 评论 (0)编辑 收藏
今天花了一个下午的时间,终于完成的cas配置的一次完整的运行。cas前世今生我就不介绍了,有兴趣的朋友谷歌或是百度一下就可以有很详细的了解了,重点记录一下今天的配置过程和遇到的问题及解决方法。
环境:浏览器(ie6.0,windows xp)
    cas server 在一台Linux服务器,cas client在另外一台linux服务器
    应用服务器为tomcat5.5.26
初步的配置实用过程参考了http://www.blogjava.net/yida/archive/2007/04/03/55466.html的描述,各位亦可以访问阿木的blog。整理如下:
1.请下载到cas的官方网站下载cas-server(我用的是3.2)和cas-client(2.0.11),tomcat5.5.26
    cas的官方网站:http://www.ja-sig.org/products/cas/
2.安装cas-server,我们假定安装cas-server的服务器为server1
    (1)请在server1服务器上安装好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置环境变量JAVA_HOME
    (2)将cas-server-3.2-release.zip解压,将moudels目录下cas-server-webapp-3.2.war拷贝到tomcat的webapps目录下,修        改名称为cas.war.
    (3)生成server1的安全证书:
      
keytool -genkey -alias my-alias-name -keyalg RSA -keystore keystore-file
       (4)在server1
配置https
             在
$CATALINA_HOME/conf/server.xml里修改为一下配置
              <Connector port="8443" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS"
               keystoreFile="/path/keystore-file" keystorePass="your-password"
              />
          (5)导出server1的证书,
用来给所有需要用到的客户端导入
               
keytool -export -file myserver.cert -alias my-alias-name -keystore keystore-file
         
(6)将导出的证书上传的client1服务器上。
          (7)启动server1上的tomcat,检验cas配置是否成功,访问http://ip:8443/cas/login,如果能看到cas的登录页面则表示配                置成功。
3.配置 cas-client,我们以tomcat下自带的servlet-example为例子进行说明
    (1)
请在client1服务器上安装好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置环境变量JAVA_HOME
  (2)
将cas-client-2.0.11.zip解压,把java/lib/casclient.jar拷贝到client1服务器上的
            webapps/servlets-examples/WEB-INF/lib目录下(如果没有就建一个)

  (3)在要使用CAS的客户端client1里设置(以servlets-examples这个APP为例),我们使用ServletFilter(CAS client里提供            的)来实现SSO的检查,修改servlets-examples/WEB-INF/web.xml,添加以下内容:
          <filter>
                <filter-name>CASFilter</filter-name>
                <filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
                <init-param>
                    <param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
                     <param-value>https://your.cas.server.name(eg:server1):port/cas/login</param-value>
                </init-param>
                <init-param>
                    <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
                    <param-value>https://your.cas.server.name(eg:server1):port/cas/proxyValidate</param-value>
                </init-param>
                <init-param>
                    <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
                    <param-value>your.client.server.name(eg:client1):port</param-value>
                </init-param>
            </filter>
            <filter-mapping>
                <filter-name>CASFilter</filter-name>
                    <url-pattern>/servlet/*</url-pattern>
            </filter-mapping>
       (4)
在客户端的JVM里导入信任的SERVER的证书(根据情况有可能需要管理员权限)
            
keytool -import -keystore $JAVA_HOME/jre/lib/security/cacerts -file myserver.cert -alias my-alias-name
             此时需要输入密码,默认密码为changeit
通过以上配置,基本完成cas-server和cas-client的配置,但是还有以下问题需要注意和解决
由于cas的证书需要域名才能正确的进行认证信息的交互,不支持ip,如果server和client在同一台机器上,可以使用localhost,如果像我们上面描述的三台服务器这样的环境,使用localhost或者ip是不能正常运行的。如果使用ip,运行时会抛出
HTTPS hostname wrong 的错误,解决的方法如下:
假设server1的ip为:192.168.10.1,client1的ip为192.168.10.2,开发机器(xp)的ip为:192.168.10.3
在server1和client1上设置本机的域名映射:
vi /etc/hosts 添加以下行
192.168.10.1 cas.server
在开发机器(xp)下,在C:\WINDOWS\system32\drivers\etc目录下,编辑hosts文件,添加以下行
192.168.10.1 cas.server

重新生成cas-sever的服务器端的证书,在开始问“你的名字”或“DName”的时候,必须填写你服务器所在域名(cas.server)
然后重新到处服务器器端的证书,并将其导入到client1服务器的jvm

最后修改
修改servlets-examples/WEB-INF/web.xml中关于cas过滤器的配置:请将your.cas.server.name(eg:server1)修改为cas.server即可。重新启动server1和client1的服务器上的tomcat就可正常运行。


ttp://client1:8080/servlets-examples/servlet/HelloWorldExample
系统会自动跳转到一个验证页面,随便输入一个相同的账号,密码,严正通过之后就会访问
到真正的HelloWorldExample这个servlet了


posted @ 2008-03-25 18:05 雪地孤鸿 阅读(4721) | 评论 (0)编辑 收藏
使用jbossTools创建seam website项目的注意事项,由于seam2.0本身标榜的口号是“企业级的java应用程序框框架”,关键的卖点是“JSF和ejb3.0的深度集成”,所以使用jbossTools工具生成项目结构是,也就天然的对ejb3.0的支持较好,但是如果不使用实体bean之类的东东,就需要对生成的项目的进行适当的修改才可以正常的运行。我想这是jbossTools或是seam框架本身需要改进的地方,jbossTools向导不能根据客户的需求很好的定制生成项目框架,表现的很不友好,对于初学者来说,很容易产生混淆。经过将近两天的测试,现总结如下(以seam2.0的example中hibernate2为例):
1.重建为jboss4.2下的seam2.0+hibernate项目:
需要注意的是:1.通过jbosstools工具生成的项目下面仍然会有“persistence.xml”这个文件存在,如果发布到jboss应用服务器下,仍然会导致jboss在启动时通过该文件进行相关的数据库连接。2.通过jbossTools生成的项目框架,都会默认的生成<项目名称>-ds.xml文件,如果需要使用该文件,需要单独发布,如果不需要,则要修改hibernate-cfg.xml文件的配置信息。
2.重建为tomcat6.0下的seam2.0+hibernate项目:
1.通过jbossTools无法之间在tomcat5.×下建立下项目框架,由于jsf1.2,seam1.2或seam2.0均需要serlet2.5,如果需要在tomcat5.×下创建项目,则只能进行手工配置。
2.在tomcat创建seam website项目,通过jbossTools无法创建完整的项目,相关的第三方包,需要从seam2.0的发布包中手动copy到当前下项目的classpath下(/WEB-INF/lib),主要的第三方包包括:
commons-*.jar,jsf-api.jar,jsf-impl.jar,jstl.jar,dom4j.jar,hibernate.jar,hibernate-commons-annotations.jar,hibernate-annotations.jar,hibernate-entitymanager.jar,hibernate-validator.jar,javassist.jar,persistence-api.jar,cglib.jar,jta.jar,antlr.jar
3.数据源也需要手动配置,如果配置为tomcat的jndi,请参考tomcat的相关文档。
4.注意修改src/action和src/module源文件编译的输出路径到/WEB-INF/classes目录下,否则项目发布后可能会找到相关类路径的错误。
5.其他有jbossTools生成的无关文件可以删除。

在jboss4.2和tomcat6.0下通过jbossTools创建seam website项目框架需要注意的,暂时总结如上。本blog将持续更新有关seam2.0的学习心得。

欢迎交流!




posted @ 2008-03-17 14:16 雪地孤鸿 阅读(1729) | 评论 (3)编辑 收藏
仅列出标题
共4页: 上一页 1 2 3 4 下一页 
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(17)

随笔分类

随笔档案

文章档案

blog

搜索

  •  

最新评论

阅读排行榜

评论排行榜