最近,我开始使用NGINX,我发现我们可以将其用于反向代理,从自身提供静态内容可以减少加载时间。我的本地计算机上有一个Tomcat / JBoss服务器,我想将NGINX放在它的前面,以便可以从NGINX提供静态内容,并由Tomcat / JBoss保留所有内容。我的Tomcat / JBoss应用程序在http://localhost:8081/Test我的NGINX配置上运行正常,但无法加载css/js/jpg文件。这是我的战争组织,这里的静态内容是
http://localhost:8081/Test
css/js/jpg
试战
TEST | |--->Resources | |------->CSS | | |----> style.css | | | |-------->Images | |----> a.jpg | |----> b.jpg | |--->WEB-INF | |----->Web.xml | |----->spring-servlet.xml | |--->JSP |---->login.jsp
我认为问题是由于绝对路径所致,所以我应该复制资源文件夹并将其放在NGINX的某个文件夹中,并配置NGINX以从其自己的目录中选择文件,而不是转到Tomcat / JBoss吗?我是新来的,所以我不知道要这样做,任何人都可以在这方面帮助我。这是我的NGINX的conf文件(Windows)
server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://127.0.0.1:8081/Test/; }
您可以使用regexp 添加 位置 :
server { listen 80; server_name localhost; location ~* \.(js|jpg|png|css)$ { root path/to/tomcat/document/root/Test/; expires 30d; } location / { proxy_pass http://127.0.0.1:8081/Test/; } }