您的位置:首页 > 运维架构 > Tomcat

tengine/nginx-tomcat动静分离遇到的问题

2016-12-30 15:13 453 查看
小站安装好tengine后,接下来的工作就是要配置好tengine让其和后端的tomcat正常的连接工作起来,tengine的配置文件本身比较简单,网上有大量的相关介绍说明文档,我这里只是摘出我配置过程中遇到一些坑,分享给有需要的朋友们:

访问首页报403错误

比如访问网站www.coolskill.net时报403错误,此时要检查当前nginx的用户是哪一个,有没有权限操作对应的资源文件,起初我并没有配置用户信息,导致浏览器请求css/js文件时直接403;另外还需要确认的是网站的根目录下有没有index中配置的相关文件。这个问题困绕了我较长一段时间,由于我的首页地址配置的是index.htm,此地址根目录文件夹下并无此文件。在我之前的认识中,根据我的proxy配置tengine/nginx会将index.htm的请求路由到后端tomcat处理,但事实上并非如此,我就在根目录下建了一个名为index.htm的文件,于是就解决了这个问题.

tomcataccess日志记录IP为nginx地址

在tomcat上记录下来的访问日志请求IP都是tengine的地址,此时需要在nginx转发时配置当前请求header:

同时还需要修改tomcat日志参数,在日志格式中添加%{X-Real-IP}i,如下所示:

了解日志系统MDC概念的人肯定对%{X-Real-IP}i这种写法感到很眼熟,是的,这个X-Real-IP就是我们在nginx.conf中配置的那个请求头字段名,我们可以在TOMCAT后台将这个字段打印出来。后面紧跟着的那个字母i表示的就是从请求头中取值(forincomingheaders)。关于tomcat上访问日志的配置格式详细情况可以参考:http://tomcat.apache.org/tomcat-7.0-doc/config/valve.html这个文档中的介绍。

以下为本站的nginx.conf配置文件部分内容如下:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: