当前位置 : 主页 > 网络编程 > JavaScript >

tomcat环境angularJS友好URL实现

来源:互联网 收集:自由互联 发布时间:2021-07-03
angularJS友好URL实现,tomcat环境 1. [代码] [JavaScript]代码 html lang="zh-CN" ng-app="app"head base href="/" //增加base标签// 省略代码/head 2. [代码] [JavaScript]代码 app.config(['$routeProvider', '$locationProvider',
angularJS友好URL实现,tomcat环境

1. [代码][JavaScript]代码    

<html lang="zh-CN" ng-app="app">
<head>
    <base href="/">  //增加base标签

// 省略代码
</head>

2. [代码][JavaScript]代码    

app.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
    $stateProvider
            .state('login', {
                url: '/login',
                templateUrl: 'src/login/login.html',
                controller: 'loginCtrl'
            });
    $locationProvider.html5Mode(true);
}]);

3. [代码][JavaScript]代码    

tomcat配置
这里需要使用到UrlRewriteFilter这个插件,使用方法:

1.将urlrewritefilter-4.0.3.jar包放入应用目录“WEB-INF/lib”下。

2.在WEB-INF/web.xml配置文件中加入:
<filter>
    <filter-name>UrlRewriteFilter</filter-name>
    <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>UrlRewriteFilter</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>
3.在WEB-INF目录新建“urlrewrite.xml”转发规则文件。内容如下:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.0//EN"
    "http://tuckey.org/res/dtds/urlrewrite3.0.dtd">
<urlrewrite>
   <rule>
      <from>^/[a-zA-Z]+(/([a-zA-Z]|[0-9])*)*$</from>
      <to>/index.html</to>
   </rule>
</urlrewrite>
其中rule部分匹配地址用到了正则表达式,这里不赘述。这样就将规则设置完成了,重启tomcat刷新页面,没有#也不会404了。
网友评论