nginx弹簧mvc url重写

nginx弹簧mvc url重写

问题描述:

我正在使用标记mvc:resources在我的spring mvc项目中处理静态文件。nginx弹簧mvc url重写

嗯,我想重写使用搜索引擎优化的URL,如/页?ID = 1 >>/page/1.html

[春天的context.xml]

<mvc:annotation-driven /> 
<mvc:resources location="/WEB-INF/view/css/" mapping="/css/**" /> 
<mvc:resources location="/WEB-INF/view/images/" mapping="/images/**" /> 
<mvc:resources location="/WEB-INF/view/js/" mapping="/js/**" /> 
<mvc:resources location="/WEB-INF/view/jsp/" mapping="/jsp/**" /> 

[nginx.conf]

rewrite  ^/page/(.*)(.html)$ /page?id=$1 last; 
proxy_pass http://127.0.0.1:8080/project/; 

问题:

所有静态文件将被添加前缀 ,绝对不能得到正确的文件,

如 '本地主机/ JS/index.js' 成为 '本地主机/ /js/index.js'

所以,我怎么能解决这个问题?有什么建议么 ?

我一直在使用urlrewritefilter(org.tuckey),并得到了同样的情况QAQ

我相信现在你会发现你的反应,但我会回答那些你以后会是谁寻找同样的尝试回答。

location ~ ^/script/(.*)$ { 
         alias /var/lib/tomcat7/webapps/ROOT/assets/js/$1; 
         autoindex off; 
       } 


    location ~ ^/styles/(.*)$ { 
         alias /var/lib/tomcat7/webapps/ROOT/assets/css/$1; 
         autoindex off; 
       } 


    location ~ ^/images/(.*)$ { 
         alias /var/lib/tomcat7/webapps/ROOT/assets/images/$1; 
         autoindex off; 
       } 

以上是在次年春天资源映射的nginx的

<mvc:resources mapping="/images/**" location="/assets/images/"/> 
<mvc:resources mapping="/styles/**" location="/assets/css/"/> 
<mvc:resources mapping="/script/**" location="/assets/js/"/> 

希望相当于这有助于

最好的问候,

+0

多谢兄弟,我已经解决了这个问题) –