zoukankan      html  css  js  c++  java
  • mobile web for no cookie session

    由于一些低端手机不支持cookie,造成登录不上,在网上也查过都用url重写(a.普通方式实现 b.jstl-<c:url/> c.webwork-<ww:url/>)来实现,要是若大的项目都这么来工作量会很大,最终找到了一个解决方法采用resin url rewrite来传递jsessionid,以下配置为resin4.0.23

    1.resin.conf默认配置中,jsessionid以cookie的方式在页面传递,即:

    <session-config> 
      <enable-url-rewriting>false</enable-url-rewriting> 
    </session-config>
    

    2.使用url rewrite有两种方式:

      a.http://www.test.com/login.action;jsessionid=asdfasdfg2312?...

      这种是将jsessionid放在action后面,需要修改resin/conf/resin.conf中的配置为: 

    <host id="" root-directory="/usr/work/deploy/mobile">
      <web-app id="/" root-directory=".">
        <session-config>
          <!--<reuse-session-id>true</reuse-session-id>-->
          <enable-cookies>false</enable-cookies> 
          <enable-url-rewriting>true</enable-url-rewriting> 
        </session-config>
      </web-app>
    </host>

      b.http://www.test.com/~jid=asdfasdfg2312/login.action?... 

      还要在resin/conf/resin.conf中增加session-url-prefix的设置:

    <cluster id="app-tier">
      ...
      <session-url-prefix>/~jid=</session-url-prefix>
      ...
      <host id="" root-directory="/usr/work/deploy/mobile">
        <web-app id="/" root-directory=".">
          <session-config>
            <!--<reuse-session-id>true</reuse-session-id>-->
            <enable-cookies>false</enable-cookies> 
            <enable-url-rewriting>true</enable-url-rewriting> 
          </session-config>
        </web-app>
      </host>
    </cluster>

    参考:

    http://www.caucho.com/resin-4.0/admin/deploy-ref.xtp#sessionconfig

    http://www.blogjava.net/aoxj/archive/2007/12/05/165538.html

  • 相关阅读:
    python迭代器
    初识html
    跨域(jsonp)方法
    闭包
    pycharm软件配置
    插槽slot
    git常用操作
    在mac中使用Charles抓包操作
    防止网页被嵌入框架
    H5唤起APP
  • 原文地址:https://www.cnblogs.com/wen12128/p/2639741.html
Copyright © 2011-2022 走看看